正解: apt-get updateとinstallを同じRUNにまとめ、不要なaptリストも同じレイヤーで削除するDockerのレイヤーは後からファイルを削除しても、前のレイヤーに含まれたサイズが残ることがあります。そのためapt-get update、install、rm -rf /var/lib/apt/lists/* のような削除処理を同じRUN内で行うと、不要なキャッシュをイメージに残しにくくできます。補足: --no-install-recommendsを使うと、必要以上の推奨パッケージを避けられる場合があります。A. apt-get updateとinstallを同じRUNにまとめ、不要なaptリストも同じレイヤーで削除する: これが正解です。B. apt-get updateをCMDに移して、コンテナ起動時に毎回更新する: 起動が遅くなり、実行環境の再現性も下がります。C. apt-get installを複数のRUNに分け、各パッケージを別レイヤーにする: レイヤーが増え、不要ファイルも残りやすくなります。D. EXPOSEを書けば不要なパッケージキャッシュは自動的に消える: EXPOSEはポート情報であり、ファイル削除とは関係ありません。
教科書へ直接移動
読みたい分野を選べます