映象詳情檢視

映象詳情檢視顯示了 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. 選擇“檢視建議的基礎映象修復”按鈕。

    這將開啟一個視窗,其中包含有關如何透過使用更好的基礎映象來提高映象安全性的建議。有關詳細資訊,請參閱基礎映象的建議

當前映象的建議

當前映象建議檢視可幫助您確定您正在使用的映象版本是否已過時。如果您正在使用的標籤引用了舊的摘要,則檢視會顯示更新標籤的建議,方法是拉取最新版本。

選擇“拉取新映象”按鈕以獲取更新版本。勾選複選框以在拉取最新版本後移除舊版本。

基礎映象的建議

基礎映象建議檢視包含兩個選項卡,用於在不同型別的建議之間切換

  • 重新整理基礎映象
  • 更改基礎映象

這些基礎映象建議僅在您是正在檢查的映象的作者時才可操作。這是因為更改映象的基礎映象需要您更新 Dockerfile 並重新構建映象。

重新整理基礎映象

此選項卡顯示所選基礎映象標籤是否是最新可用版本,或者是否已過時。

如果用於構建當前映象的基礎映象標籤不是最新的,則此視窗中會顯示兩個版本之間的差異。差異資訊包括

  • 建議(更新)版本的標籤名稱和別名
  • 當前基礎映象版本的年齡
  • 最新可用版本的年齡
  • 影響每個版本的 CVE 數量

在視窗底部,您還會收到可執行的命令片段,以便使用最新版本重新構建映象。

更改基礎映象

此選項卡顯示您可以使用的不同替代標籤,並概述了每個標籤版本的優點和缺點。選擇基礎映象會顯示該標籤的建議選項。

例如,如果您正在檢查的映象使用的是舊版本的 `debian` 作為基礎映象,它會顯示使用更新、更安全的 `debian` 版本的建議。透過提供多個替代選項供選擇,您可以親自檢視這些選項之間的比較,並決定使用哪一個。

Base image recommendations

選擇一個標籤建議以檢視建議的更多詳細資訊。它會顯示該標籤的優點和潛在缺點,為什麼它被推薦,以及如何更新您的 Dockerfile 以使用此版本。