Dockerfile 內容排序

  1. 基本影象宣告(FROM
  2. 後設資料(例如 MAINTAINERLABEL
  3. 安裝系統依賴項(例如 apt-get installapk add
  4. 複製應用依賴項檔案(例如 bower.jsonpackage.jsonbuild.gradlerequirements.txt
  5. 安裝應用程式依賴項(例如 npm installpip install
  6. 複製整個程式碼庫
  7. 設定預設執行時配置(例如 CMDENTRYPOINTENVEXPOSE

這些排序是為了使用 Docker 的內建快取機制優化構建時間。

經驗法則:

經常更改的部件(例如程式碼庫)應放在 Dockerfile 的底部附近,反之亦然。很少改變的部分(例如依賴性)應放在頂部。