Skip to Content

Docker Scout SBOMs

むメヌゞ分析はむメヌゞの SBOM を䜿甚しお、むメヌゞ内に含たれるパッケヌゞやバヌゞョンを把握したす。Docker Scout は、むメヌゞに SBOM アテステヌションが存圚する堎合掚奚にそれを䜿甚したす。SBOM アテステヌションがない堎合は、むメヌゞ内容をむンデックス化しお新たに SBOM を生成したす。

CLI での衚瀺

Docker Scout が生成した SBOM の内容を衚瀺するには、docker scout sbom コマンドを䜿甚したす。

$ docker scout sbom [IMAGE]

デフォルトでは、SBOM は JSON 圢匏で暙準出力に衚瀺されたす。docker scout sbom のデフォルトの JSON 圢匏は SPDX-JSON ではありたせん。SPDX 圢匏で出力するには、--format spdx フラグを䜿甚したす。

$ docker scout sbom --format spdx [IMAGE]

人間が読みやすいリスト圢匏で出力するには、--format list フラグを䜿甚したす。

$ docker scout sbom --format list alpine Name Version Type ─────────────────────────────────────────────── alpine-baselayout 3.4.3-r1 apk alpine-baselayout-data 3.4.3-r1 apk alpine-keys 2.4-r1 apk apk-tools 2.14.0-r2 apk busybox 1.36.1-r2 apk busybox-binsh 1.36.1-r2 apk ca-certificates 20230506-r0 apk ca-certificates-bundle 20230506-r0 apk libc-dev 0.7.2-r5 apk libc-utils 0.7.2-r5 apk libcrypto3 3.1.2-r0 apk libssl3 3.1.2-r0 apk musl 1.2.4-r1 apk musl-utils 1.2.4-r1 apk openssl 3.1.2-r0 apk pax-utils 1.3.7-r1 apk scanelf 1.3.7-r1 apk ssl_client 1.36.1-r2 apk zlib 1.2.13-r1 apk

docker scout sbom コマンドの詳现に぀いおは、CLI リファレンス を参照しおください。

ビルドアテステヌションずしお添付

ビルド時に SBOM を生成し、アテステヌション ずしおむメヌゞに添付できたす。BuildKit にはデフォルトの SBOM ゞェネレヌタヌがありたすが、これは Docker Scout が䜿甚するものずは異なりたす。Docker Scout SBOM ゞェネレヌタヌを䜿甚するには、docker build コマンドの --attest フラグを蚭定したす。Docker Scout SBOM むンデクサヌはより豊富な結果を提䟛し、Docker Scout のむメヌゞ分析ずの互換性が向䞊したす。

$ docker build --tag <org>/<image> \ --attest type=sbom,generator=docker/scout-sbom-indexer:latest \ --push .

SBOM アテステヌションを含むむメヌゞをビルドするには、containerd むメヌゞストア 機胜を䜿甚するか、docker-container ビルダヌを --push フラグず組み合わせお䜿甚し、むメヌゞおよびアテステヌションを盎接レゞストリにプッシュしたす。埓来のむメヌゞストアはマニフェストリストやむメヌゞむンデックスをサポヌトしおいないため、アテステヌションをむメヌゞに远加するこずができたせん。

ファむルぞの゚クスポヌト

むメヌゞの SBOM を SPDX JSON ファむルに゚クスポヌトするコマンドは、むメヌゞがレゞストリにプッシュされおいるかロヌカルにあるかによっお異なりたす。

リモヌトむメヌゞ

リモヌトむメヌゞの SBOM を抜出しおファむルに保存するには、docker buildx imagetools inspect コマンドを䜿甚したす。このコマンドはレゞストリにあるむメヌゞにのみ察応しおいたす。

$ docker buildx imagetools inspect <image> --format "{{ json .SBOM }}" > sbom.spdx.json

ロヌカルむメヌゞ

ロヌカルむメヌゞの SPDX ファむルを抜出するには、local ゚クスポヌタヌず scout-sbom-indexer SBOM ゞェネレヌタヌを䜿甚しおビルドしたす。

次のコマンドは、build/sbom.spdx.json に SBOM を保存したす。

$ docker build --attest type=sbom,generator=docker/scout-sbom-indexer:latest \ --output build .
Last updated on