【Docker】ADDとCOPYについて

Dockerfile を書くベスト・プラクティス — Docker-docs-ja 17.06.Beta ドキュメント

要約

  • 一般的には COPY が望ましい。
  • COPY はローカルファイルをコンテナの中にコピーするという、基本的な機能しかサポートされていない。
  • 一方で ADD はローカル上でのtarアーカイブ展開やリモートURLのサポートを持つ。
  • ADD のベストな使い方はローカルのtarファイルをイメージに自動展開する用途。
  • イメージサイズの問題から、 ADD でリモートURL上のパッケージを取得するのは可能な限り避けた方が良い。
  • 代わりに curlwget を使うべきで、これにより展開後に不要となったファイルを削除でき、イメージに余分なレイヤを増やさない。