Skip to content
Latchkey

Image Layer とは何か?

image layer とは、1 つの build ステップによって生成される単一のファイルシステム変更の集合で、content-addressed な blob として保存されます。コンテナイメージは、runtime がオーバーレイして最終的なルートファイルシステムを生成するレイヤーの順序付きスタックです。レイヤーは digest によって参照されるため、同一のレイヤーは一度だけ保存され、イメージ間で共有されます。

なぜ重要か

レイヤーの共有こそが、新しいイメージの pull で数メガバイトしかダウンロードされないことが多い理由です。変更のないベースレイヤーはすでに cache されています。変わりやすいコンテンツが後方のレイヤーに位置するように build ステップを並べることで、cache の再利用が最大化され、push が小さくなります。runner 上では、良いレイヤー構成により、変わるのはアプリコードだけで依存関係のレイヤーは cache されたまま保たれます。

関連ガイド