镜像详情视图

镜像详情视图展示了 Docker Scout 的分析结果摘要。您可通过以下途径访问该镜像视图:Docker Scout 仪表板、Docker Desktop 的 镜像 视图,以及 Docker Hub 上的镜像标签页面。镜像详情展示了镜像分层结构(基础镜像)、镜像层、软件包以及漏洞的详细信息。

The image details view in Docker Desktop

Docker Desktop 首先在本地分析镜像,并生成软件物料清单(SBOM)。 Docker Desktop、Docker Hub 以及 Docker Scout 仪表盘和 CLI 均使用该 SBOM 中的 软件包 URL(PURL)链接Docker Scout 的安全公告数据库 中查询匹配的通用漏洞与暴露(CVE)。

镜像层级

您检查的镜像可能具有一个或多个基础镜像,这些基础镜像在镜像层级结构下显示。这意味着该镜像的作者在构建镜像时以其他镜像作为起点。通常,这些基础镜像要么是操作系统镜像,例如 Debian、Ubuntu 和 Alpine;要么是编程语言镜像,例如 PHP、Python 和 Java。

选择链中的每张镜像,即可查看各层分别源自哪个基础镜像。选择全部行可选中所有图层和基础镜像。

一个或多个基础镜像可能有可用更新,这些更新可能包括修复您镜像中漏洞的安全补丁。所有有可用更新的基础镜像将显示在镜像层次结构的右侧。

Docker 镜像由多层构成。镜像层按自上而下的顺序列出, 最顶层为最早创建的层,最底层为最新添加的层。 通常,列表顶部的层源自基础镜像,而底部的层由镜像作者添加, 常通过 Dockerfile 中的命令实现。在 镜像层级结构 下选择基础镜像时, 将高亮显示源自该基础镜像的层。

选择单个或多个图层可筛选右侧显示的软件包和漏洞,以展示所选图层新增的内容。

漏洞

漏洞选项卡显示在镜像中检测到的漏洞和利用列表。该列表按软件包分组,并按严重性排序。

您可以通过展开列表项,获取有关该漏洞或利用方式的更多信息,包括是否有修复方案。

修复建议

当您在 Docker Desktop 或 Docker Hub 中检查镜像时, Docker Scout 可为您提供关于如何提升该镜像安全性的建议。

Docker Desktop 中的推荐内容

在 Docker Desktop 中查看镜像的安全建议:

  1. 转到 Docker Desktop 中的 镜像 视图。
  2. 选择您想要查看推荐信息的镜像标签。
  3. 在接近顶部的位置,选择推荐修复下拉按钮。

下拉菜单可让您选择是查看当前镜像的建议,还是查看用于构建该镜像的任何基础镜像的建议:

如果您当前查看的镜像没有关联的基础镜像,则下拉菜单仅显示“查看当前镜像的推荐”选项。

Docker Hub 推荐内容

在 Docker Hub 中查看镜像的安全建议:

  1. 前往您已启用 Docker Scout 镜像分析功能的镜像的仓库页面。

  2. 打开 标签 选项卡。

  3. 选择您希望查看推荐内容的标签。

  4. 选择 查看推荐的基础镜像修复 按钮。

    这将打开一个窗口,为您提供有关如何通过使用更安全的基础镜像来改进镜像安全性的建议。有关更多详细信息,请参阅 基础镜像建议

当前镜像的建议

当前镜像视图的建议可帮助您确定正在使用的镜像版本是否已过期。如果您当前使用的标签引用的是旧的摘要(digest),则视图将建议您通过拉取最新版本来更新该标签。

选择 拉取新镜像 按钮以获取更新版本。勾选复选框可在拉取最新版本后删除旧版本。

基础镜像使用建议

基础镜像推荐视图包含两个标签页,用于在不同类型的推荐之间切换:

  • 刷新基础镜像
  • 更改基础镜像

这些基础镜像建议仅在您是所检查镜像的作者时才可执行。因为修改镜像的基础镜像需要您更新 Dockerfile 并重新构建镜像。

刷新基础镜像

此选项卡显示所选基础镜像标签是否为最新可用版本, 或是否已过时。

如果用于构建当前镜像的基础镜像标签不是最新版本,则这两个版本之间的差异将显示在此窗口中。差异信息包括:

  • 推荐版本(较新版本)的标签名称及其别名
  • 当前基础镜像版本的使用年限
  • 最新可用版本的发布时间
  • 影响各版本的 CVE 数量

在窗口底部,您还会收到可用于重新构建镜像(使用最新版本)的命令片段。

更改基础镜像

此选项卡显示您可以使用的不同替代标签,并概述了每个标签版本的优缺点。选择基础镜像将显示该标签的推荐选项。

例如,如果您正在检查的镜像使用的是旧版本的 debian 作为基础镜像,系统将显示推荐使用的更新且更安全的 debian 版本。通过提供多个可选方案,您可以自行对比各选项,并决定采用哪一个。

Base image recommendations

请选择一个标签推荐以查看该推荐的详细信息。 页面将展示该标签的优势与潜在缺点、推荐原因,以及如何更新 Dockerfile 以使用此版本。