今までBest practices for writing dockerfilesを読んだつもりで全然読んでませんでしたすみません。
Best Practice
Best practices for writing dockerfilesの該当箇所
- RUN apt-get upgradeを使わない。
- 必須パッケージが古いことがわかっている場合は、ベースイメージのメンテナーに連絡した上で、RUN apt-get update && apt-get install -f hogeを利用する。
- 日本語翻訳では、“Avoid RUN apt-get upgrade“が”Run apt-get update“を利用しない”と誤訳されている。
経緯
Dockerfile用のLinterを作っている友達がいて、その中にDo not use apt-get upgrade or dist-upgrade.というのがあり疑問に思って、調べてみたらこの情報を見つけました。
Best practices for writing dockerfiles読んだつもりで全然読めてませんでした。すみません。
理由
- 
「必須」パッケージを”unprivileged container”(訳が難しいが親イメージに対する「最下流の」コンテナ、的な意味)でアップデートするべきではないから。 - ちゃんとベースイメージでアップデートするように求められています。
 
まとめ
- RUN sudo apt-get upgradeを使う状況を作らない。
- Bestpractices for writing dockerfilesをちゃんと読もう。