Skip to content
Latchkey

Distrolessイメージ - CI/CD用語集の定義

distrolessイメージは、アプリケーションとそのランタイム依存関係のみを含む最小限のベースイメージで、パッケージマネージャー、シェル、汎用のOSユーティリティを含みません。Googleのgcr.io/distrolessイメージが一般的な例です。

使う理由

シェルとパッケージマネージャーを取り除くとイメージが小さくなり、攻撃対象領域が減り、イメージスキャナーが報告するCVEの数も減ります。脆弱性を抱えうるOSパッケージがはるかに少なくなるためです。

トレードオフ

distrolessコンテナにはシェルがないため、デバッグのためにdocker execでシェルに入ることはできません。マルチステージbuildはdistrolessと相性が良く、フルイメージでビルドし、バイナリだけをdistrolessの最終ステージにコピーします。

関連ガイド