镜像详情视图

镜像详情视图显示了 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 来使用此版本。

页面选项