- URL: 2024年版のDockerfileの考え方&書き方 | フューチャー技術ブログ
- 著者: @shibu_jp
- 公開日: 2024-07-26
いつ読むか?
- プロダクトレベルの Dockerfile を開発したいとき
- Docker のベストプラクティスをキャッチアップしたいとき (2024年07月26日時点)
読書メモ
必須: マルチステージビルド
- ビルド環境と実行環境を分離し、最終イメージを軽量化
重要テクニック
- bindマウント:
RUN --mount=type=bind,target=.でCOPYを置き換え、レイヤー削減 - キャッシュマウント:
--mount=type=cache,target=/pathで依存パッケージを再利用 - ベースイメージ: Alpineは性能3〜5割低下の可能性、Debian系推奨
設定の使い分け
ARG: ビルド時パラメータENV: 実行時環境変数(本番値のみ)ENTRYPOINT+CMD: 柔軟な起動制御
便利機能
docker build --output=.: バイナリ抽出--secret: 機密情報の安全な受け渡し- 並列ビルド: 複数ステージを同時実行