使用 Docker Scout 进行修复
Docker Scout 通过根据策略评估结果提供建议,帮助您修复供应链或安全问题。建议是您可以采取的行动,这些行动可以提高策略合规性,或向镜像添加元数据,从而使 Docker Scout 能够提供更好的评估结果和建议。
Docker Scout 为以下策略类型的默认策略提供修复建议
注意
不支持对自定义策略进行引导式修复。
对于违反策略的镜像,建议侧重于解决合规性问题和修复违规行为。对于 Docker Scout 无法确定合规性的镜像,建议会向您展示如何满足确保 Docker Scout 能够成功评估策略的前提条件。
查看建议
建议显示在 Docker Scout Dashboard 的策略详细信息页面上。要访问此页面
- 转到 Docker Scout Dashboard 中的策略页面。
- 在列表中选择一个策略。
策略详细信息页面根据策略状态将评估结果分组到两个不同的标签页中
- 违规
- 合规性未知
“违规”标签页列出了不符合所选策略的镜像。“合规性未知”标签页列出了 Docker Scout 无法确定合规性状态的镜像。当合规性未知时,Docker Scout 需要更多关于该镜像的信息。
要查看镜像的建议操作,请将鼠标悬停在列表中的一个镜像上,将显示“查看修复”按钮。


选择“查看修复”按钮将打开修复侧面板,其中包含针对您的镜像的建议操作。
如果有多个建议可用,主要建议将显示为“推荐修复”。其他建议将列为“快速修复”。快速修复通常是提供临时解决方案的操作。
侧面板还可能包含一个或多个与可用建议相关的帮助部分。
最新基础镜像修复
“最新基础镜像”策略检查您使用的基础镜像是否为最新。修复侧面板中显示的建议操作取决于 Docker Scout 掌握的关于您的镜像的信息量。信息越充足,建议就越好。
以下场景概述了根据镜像可用信息提供的不同建议。
无出处证明
Docker Scout 要评估此策略,您必须为镜像添加出处证明。如果您的镜像没有出处证明,则无法确定合规性。
出处证明可用
添加出处证明后,Docker Scout 可以正确检测您使用的基础镜像版本。证明中找到的版本将与相应标签的当前版本进行交叉引用,以确定其是否最新。
如果存在策略违规,建议的操作会显示如何将您的基础镜像版本更新到最新版本,同时将基础镜像版本固定到特定的 digest。更多信息,请参阅固定基础镜像版本。
已启用 GitHub 集成
如果您在 GitHub 上托管镜像的源代码,您可以启用GitHub 集成。此集成使 Docker Scout 能够提供更有用的修复建议,并允许您直接从 Docker Scout Dashboard 启动违规修复。
启用 GitHub 集成后,您可以使用修复侧面板在镜像的 GitHub 仓库上发起拉取请求。拉取请求会自动将您的 Dockerfile 中的基础镜像版本更新到最新版本。
此自动化修复将您的基础镜像固定到特定的 digest,同时帮助您在有新版本可用时保持最新。将基础镜像固定到 digest 对于可复现性至关重要,有助于避免意外更改进入您的供应链。
关于基础镜像固定的更多信息,请参阅固定基础镜像版本。
供应链证明修复
默认的“供应链证明”策略要求镜像具有完整的出处证明和 SBOM 证明。如果您的镜像缺少证明,或者证明包含的信息不足,则违反策略。
修复侧面板中提供的建议可帮助指导您采取什么行动来解决问题。例如,如果您的镜像有出处证明,但证明包含的信息不足,建议您使用mode=max
出处重新构建镜像。