Docker Compose 發行說明
有關更詳細的資訊,請參閱 Compose 儲存庫中的發行說明。
2.39.2
2025-08-04錯誤修復和增強
- 修復了構建輸出的多個渲染問題
- 修復了 `pull` 和 `no_cache` 屬性未與 `bake` 一起應用的問題
- 移除了 `up` 命令中未明確附加服務的日誌顯示
更新
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.3.3
- 依賴項升級:將 golang 提升到 v1.23.12
- 依賴項升級:將 containerd 提升到 2.1.4
2.39.1
2025-07-24錯誤修復和增強
- 添加了用於監控 `models` 使用情況的指標
更新
- 依賴項升級:將 compose-go 提升到 v2.8.1
2.39.0
2025-07-24錯誤修復和增強
- 為 `config` 命令添加了 `--models` 標誌以列出模型
- 為 `events` 添加了 `--since` 和 `--until` 標誌
- 在 `build` 部分引入了 `provenance` 和 `sbom` 屬性
- 修復了 Windows 上的 `bridge convert` 問題
- 修復了 `bake` 構建的多個問題
更新
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.3.2
- 依賴項升級:將 buildx 提升到 v0.26.1
- 依賴項升級:將 compose-go 提升到 v2.8.0
2.38.2
2025-07-08錯誤修復和增強
- 為 `config` 命令添加了 `--networks` 標誌以列出網路
- 修復了使用 Docker Model Runner 作為提供程式服務時 `down` 命令的問題
- 修復了 Docker Model Runner 進度顯示問題
- 修復了具有配置檔案但缺少 secrets 的服務問題
更新
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.3.1
- 依賴項升級:將 buildkit 提升到 v0.23.2
- 依賴項升級:將 golang 提升到 v1.23.10
2.38.1
2025-06-30錯誤修復和增強
- 為服務 `models` 配置添加了 `model_variable` 支援
更新
- 依賴項升級:將 compose-go 提升到 v2.7.1
2.38.0
2025-06-30錯誤修復和增強
- 引入了對 LLM 配置的 `models` 支援
- 添加了 `volumes` 命令
- 移除了繫結掛載上的 `publish` 限制
- 修復了將 docker socket 掛載到不需要它的容器的問題
- 修復了 bake 輸出掛起的問題
更新
- 依賴項升級:將 compose-go 提升到 v2.7.0
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.3.0
2.37.3
2025-06-24錯誤修復和增強
- 為 Bake 添加了 `cache_to` 支援
- 修復了 Bake 整合問題
- 修復了影響 `run` 命令的多個問題
更新
- 依賴項升級:將 buildkit 提升到 v0.23.1
2.37.2
2025-06-20錯誤修復和增強
- 引入了 `use_api_socket`
- 修復了 `compose images` JSON 輸出格式
- 修復了在不支援 watch 的專案上使用 `w` 快捷方式時發生的 panic
- 修復了 Windows 上 bake 元資料檔案的許可權問題
- 修復了提供程式服務啟動時的 panic 錯誤
更新
- 依賴項升級:將 compose-go 提升到 v2.6.5
- 依賴項升級:將 buildx 提升到 v0.25.0
- 依賴項升級:將 buildkit 提升到 v0.23.0
2.37.1
2025-06-12錯誤修復和增強
- 修復了 Windows 上 bake 元資料檔案的許可權問題
- 修復了提供程式服務啟動時的 panic 錯誤
- 將 `compose images` JSON 輸出恢復為陣列格式
2.37.0
2025-06-05錯誤修復和增強
- 修復了隨機埠分配問題
- 修復了在內迴圈中不必要地重新建立容器的問題
- 修復了 `up --build` 和 `additional_context` 一起使用時的問題
更新
- 依賴項升級:將 compose-go 提升到 v2.6.4
- 依賴項升級:將 buildx 提升到 v0.24.0
- 依賴項升級:將 buildkit 提升到 v0.22.0
2.36.2
2025-05-23錯誤修復和增強
- Compose Bridge 功能現在是 Compose 的一部分
- 改進了 `docker compose images` 命令的顯示
- 將 `bake` 提升為 Compose 的預設構建工具
- 修復了構建流程中的問題
- 修復了 `watch` 重建映象後依賴服務重啟的問題
更新
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.2.2
2.36.1
2025-05-19錯誤修復和增強
- 引入了對 `provider` 服務 `options` 屬性陣列的支援
- 在擴充套件協議中添加了 `debug` 訊息
- 修復了嘗試釋出帶有 `provider` 服務的 Compose 應用程式時的問題
- 修復了帶有 `service.provider` 的 Compose 應用程式的構建問題
- 為 `config` 命令引入了 `--lock-image-digests`
更新
- 依賴項升級:將 compose-go 提升到 v2.6.3
- 依賴項升級:將 containerd 提升到 2.1.0
2.36.0
2025-05-07錯誤修復和增強
- 引入了 `networks.interface_name`
- 添加了對 `COMPOSE_PROGRESS` 環境變數的支援
- 將 `service.provider` 新增到外部二進位制檔案
- 引入了 build `--check` 標誌
- 修復瞭解析 Compose 檔案時發生的多個 panic 問題
更新
- 依賴項升級:將 compose-go 提升到 v2.6.2
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.1.0
- 依賴項升級:將 containerd 提升到 2.0.5
- 依賴項升級:將 buildkit 提升到 v0.21.1
2.35.1
2025-04-17錯誤修復和增強
- 修復了繫結掛載問題
更新
- 依賴項升級:將 compose-go 提升到 v2.6.0
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.0.4
- 依賴項升級:將 buildx 提升到 v0.22.0
2.35.0
2025-04-10錯誤修復和增強
- 添加了對 Docker Model Runner 的支援,以便輕鬆將 AI 模型整合到您的 Compose 應用程式中
- 添加了 `build --print` 命令,透過顯示等效的 bake 檔案來幫助除錯複雜的構建配置
- 添加了 `volume.type=image` 以提供更靈活的容器映象卷管理
- 為 `run` 命令添加了 `--quiet` 選項,以在執行容器時獲得更清晰的輸出
- 為 `config` 命令添加了 `--no-env-resolution` 選項,以檢視不帶環境變數替換的原始配置
- 修復了 `depends_on` 的行為,以防止在依賴項更改時不必要的容器重新建立
- 修復了使用 `include` 時環境變數定義的 secrets 的支援
- 修復了卷掛載處理,以確保繫結掛載在所有場景中都能正常工作
更新
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.1.0
- 依賴項升級:將 buildx 提升到 v0.23.0
- 依賴項升級:將 buildkit 提升到 v0.21.0
2.34.0
2025-03-14錯誤修復和增強
- 添加了對重新整理 `pull_policy` 值 `daily`、`weekly` 和 `every_<duration>` 的支援
- 在 `watch` 定義中引入了 `include` 屬性以匹配檔案模式
- 為 `docker compose run` 命令引入了 `--env-from-file` 標誌
- 將 `publish` 提升為 Compose 的常規命令
- 修復了在選擇服務後加載 `env_file` 的錯誤
更新
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.0.1
- 依賴項升級:將 buildkit 提升到 v0.17.1
- 依賴項升級:將 compose-go 提升到 v2.4.9
- 依賴項升級:將 buildx 提升到 v0.21.2
2.33.1
2025-02-21錯誤修復和增強
- 添加了對 `gw_priority`、`enable_ipv4` 的支援(需要 Docker v28.0)
- 修復了導航選單問題
- 改進了與只讀服務一起使用非檔案 secret/config 時的錯誤訊息
更新
- 依賴項升級:將 docker 引擎和 cli 提升到 v28.0.0
2.33.0
2025-02-13錯誤修復和增強
- 引入了一個提示來推廣使用 Bake
- 引入了對引用另一個服務的 `additional_context` 屬性的支援
- 添加了對 `BUILDKIT_PROGRESS` 的支援
- 當已釋出的 Compose 應用程式包含環境變數時,Compose 現在會發出警告
- 添加了 `--with-env` 標誌以釋出帶有環境變數的 Compose 應用程式
- 更新了 `ls --quiet` 幫助說明
- 修復了將構建委託給 Bake 的多個問題
- 更新了 `stats` 命令中的幫助
- 修復了“內建”seccomp 配置檔案的支援
- 修復了對多個服務使用 `watch` 的支援
- 移除了舊版指標系統使用的按錯誤型別劃分的退出程式碼
- 修復了 `compatibility` 的測試覆蓋率
- 移除了傳送到 OpenTelemetry 的原始 os.Args
- 啟用了 copyloopvar linter
- 修復了二進位制檔案的出處並生成 SBOM
- 現在使用主分支進行文件上游驗證
- 添加了 codeowners 檔案
- 將 Docker Engine v28.x 新增到測試矩陣
更新
- 依賴項升級:將 compose-go 提升到 v2.4.8
- 依賴項升級:將 buildx 提升到 v0.20.1
- 依賴項升級:將 docker 提升到 v27.5.1
- 依賴項升級:將 golangci-lint 提升到 v1.63.4
- 依賴項升級:將 golang.org/x/sys 從 0.28.0 提升到 0.30.0
- 依賴項升級:將 github.com/moby/term 提升到 v0.5.2
- 依賴項升級:將 github.com/otiai10/copy 從 1.14.0 提升到 1.14.1
- 依賴項升級:將 github.com/jonboulle/clockwork 從 0.4.0 提升到 0.5.0
- 依賴項升級:將 github.com/spf13/pflag 從 1.0.5 提升到 1.0.6
- 依賴項升級:將 golang.org/x/sync 從 0.10.0 提升到 0.11.0
- 依賴項升級:將 gotest.tools/v3 從 3.5.1 提升到 3.5.2
2.32.4
2025-01-16錯誤修復和增強
- 修復了使用 `docker compose version` 時 Compose 版本未正確顯示的問題
2.32.3
2025-01-13注意來自 Compose GitHub 儲存庫的二進位制檔案可能無法正確顯示版本號。如果您在開發或 CI 流程中依賴 `docker compose version`,請升級到 Compose 版本 2.32.4。
錯誤修復和增強
- 修復了 Compose 會用主網路 MAC 地址覆蓋服務級別 MAC 地址的問題
- 修復了併發構建期間的日誌渲染問題
2.32.2
2025-01-07更新
- 依賴項升級:將 compose-go 提升到 v2.4.7
- 依賴項升級:將 golang 提升到 v1.22.10
錯誤修復和增強
- 為 `docker compose run` 命令添加了 `--pull` 標誌
- 修復了 `watch` 模式的 `restart` 操作未監控繫結掛載的錯誤
- 修復了使用匿名卷時重新建立容器的問題
2.32.1
2024-12-16錯誤修復和增強
- 修復了不必要地重新建立容器的錯誤
2.32.0
2024-12-13更新
- 依賴項升級:將 docker + buildx 升級到最新版本
- 依賴項升級:將 otel 依賴項提升到 v1.28.0 和 v0.53.0
- 依賴項升級:將 golang.org/x/sys 提升到 0.28.0
- 依賴項升級:將 golang.org/x/crypto 提升到 0.31.0
- 依賴項升級:將 google.golang.org/grpc 提升到 1.68.1
- 依賴項升級:將 golang.org/x/sync 提升到 0.10.0
- 依賴項升級:將 xx 提升到 v1.6.1
錯誤修復和增強
- 改進了使用 Bake 構建時的支援
- 添加了 `restart` 和 `sync+exec` watch 操作
- 當卷或網路配置更改時,Compose 現在會重新建立容器
- 修復了對 `mac_address` 的支援
- 修復了 `pull --quiet` 以僅隱藏進度,而不隱藏全域性狀態
- 修復了只有 `rebuild` watch 操作現在需要構建宣告的問題
- 當透過 Compose 選單啟用時,Compose 現在會記錄 `watch` 配置錯誤
2.31.0
2024-11-28更新
- 依賴項升級:將 compose-go 提升到 v2.4.5
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.4.0-rc.2
- 依賴項升級:將 buildx 提升到 v0.18.0
- 依賴項升級:將 buildkit 提升到 v0.17.1
錯誤修復和增強
- 添加了使用 Docker Buildx Bake 構建 Docker Compose 服務的能力
- 添加了 `commit` 命令以從正在執行的容器建立新映象
- 修復了未檢測到網路更改的問題
- 修復了容器順序停止導致重啟過程變慢的問題
2.30.3
2024-11-07更新
- 依賴項升級:將 compose-go 提升到 v2.4.4
錯誤修復和增強
- 修復了使用 `--watch` 時不應重新啟動服務的問題
- 改進了在 Compose 檔案中多次使用相同 YAML 錨點的修復
2.30.2
2024-11-05更新
- 依賴項升級:將 compose-go 提升到 v2.4.3
錯誤修復和增強
- 修復了更新服務配置檔案時重新建立服務的問題
- 修復了在 Compose 檔案中多次使用相同 YAML 錨點時的迴歸問題
2.30.1
2024-10-30更新
- 依賴項升級:將 compose-go 提升到 v2.4.2
錯誤修復和增強
- 修復了將 stdin 作為 `-f` 標誌輸入時的迴歸問題
- 修復了在 Compose 檔案中多次使用相同 YAML 錨點時的迴歸問題
2.30.0
2024-10-29更新
- 依賴項升級:將 compose-go 提升到 v2.4.1
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.3.1
錯誤修復和增強
- 引入了服務鉤子支援。
- 添加了 alpha `generate` 命令。
- 添加了 `export` 命令。
- 添加了對 Compose 檔案中使用 `devices` 進行 CDI 裝置請求的支援。
- 大量 bug 修復。
2.29.7
2024-09-20錯誤修復和增強
- 修復了使用掛載 API 進行繫結掛載時的迴歸問題。
2.29.6
2024-09-19更新
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.3.0-rc.2
錯誤修復和增強
- 修復了 Windows 容器繫結掛載的問題。
2.29.5
2024-09-17錯誤修復和增強
- 修復了 WSL2 上的繫結掛載問題。
2.29.4
2024-09-16更新
- 依賴項升級:將 buildx 提升到 v0.17.1
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.3.0-rc.1
錯誤修復和增強
- 修復了重新啟動分歧的依賴項時服務未停止的問題。
- 修復了 OTEL 客戶端上的潛在 `nil` 指標錯誤。
2.29.3
2024-09-12更新
- 依賴項升級:將 compose-go 提升到 v2.2.0
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.2.1
錯誤修復和增強
- 現在允許將繫結掛載和 `rebuild` 組合與 `watch` 一起使用。
- 修復了當 `up` 與 `--no-deps` 一起使用時重新建立容器的錯誤。
- 修復了重新附加容器時未關閉流的錯誤。
- 恢復了使用 `-V` 或 `--renew-anon-volumes` 時匿名卷的重新建立。
2.29.2
2024-08-16更新
- 依賴項升級:將 compose-go 提升到 v2.1.6
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.1.2
- 依賴項升級:將 buildx 提升到 v0.16.2
- 依賴項升級:將 buildkit 提升到 v0.15.2
- 依賴項升級:將 golang 提升到 v1.21.12
- 依賴項升級:將 sys 提升到 v0.22.0
- 依賴項升級:將 flock 提升到 v0.12.1
錯誤修復和增強
- 修復了 `docker compose kill` 用法的文件。
- 修復了 build.go 中 `toAPIBuildOptions` 的冗餘條件。
- 修復了 Compose 重啟後 Watch 的初始 `sync` 問題,引入了 `x-initialSync`。
- 修復了當 `sync-restart` Watch 動作用於單個容器時,Compose 程序停止的問題。
2.29.1
2024-07-23更新
- 依賴項升級:將 compose-go 提升到 v2.1.5。
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.1.0。
錯誤修復和增強
- 使用更多欄位增強 JSON 進度事件。
2.29.0
2024-07-17更新
- 依賴項升級:將 compose-go 提升到 v2.1.4
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.0.3
- 依賴項升級:將 buildx 提升到 0.16.0
- 依賴項升級:將 buildkit 提升到 0.15.0
- 依賴項升級:將 containerd 提升到 1.7.19
錯誤修復和增強
- 添加了 JSON 流進度寫入器。
- 為 `docker compose watch` 命令添加了 `--prune` 標誌。
- 現在,在選擇服務後,不必要的資源將被排除。
- 沒有值的空變數在容器中被 unset。
2.28.1
2024-06-24錯誤修復和增強
- 修復了在 TTY 模式可用時 `v2.28.0` 中損壞的進度顯示。
2.28.0
2024-06-21更新
- 依賴項升級:將 compose-go 提升到 v2.1.3
- 依賴項升級:將 docker 引擎和 cli 提升到 v27.0.1-rc.1
2.27.3
2024-06-21更新
- 依賴項升級:將 buildx 提升到 0.15.1
- 依賴項升級:將 buildkit 提升到 0.14.1
2.27.2
2024-06-20更新
- 依賴項升級:將 golang 提升到 1.21.11
- 依賴項升級:將 docker 引擎和 cli 提升到 v26.1.4
- 依賴項升級:將 buildx 提升到 0.15.0
- 依賴項升級:將 buildkit 提升到 0.14.0
- 依賴項升級:將 containerd 提升到 1.7.18
錯誤修復和增強
- 為 `config` 命令添加了 `--environment` 標誌
- 修復了當 `watch` 作為 `up` 命令的標誌使用時程序掛起的錯誤
- 修復了 `.env` 檔案中 `COMPOSE_PROFILES` 的使用問題
2.27.1
2024-05-24更新
- 依賴項升級:將 compose-go 提升到 v2.1.1
- 依賴項升級:將 docker 引擎和 cli 提升到 v26.1.3
- 依賴項升級:將 buildx 提升到 0.14.1
- 依賴項升級:將 containerd 提升到 1.7.17
錯誤修復和增強
- 在 CLI 中添加了一個導航選單,您可以在其中在 Docker Desktop 中開啟您的 Compose 檔案
- 為 `docker compose up` 中的 `--menu` 標誌添加了文件
- 修復了 `---resolve-image-digests` 與 `--no-interpolate` 一起使用時的錯誤
- 您現在可以使用本地 `.env` 檔案覆蓋 `COMPOSE_*` 環境變數
2.27.0
2024-04-24更新
- 依賴項升級:將 golang 提升到 1.21.9
- 依賴項升級:將 compose-go 提升到 v2.1.0
- 依賴項升級:將 docker 引擎和 cli 提升到 v26.1.0
錯誤修復和增強
- 引入了 `--abort-on-container-failure` 標誌
- 引入了 `--all-resources` 以不排除服務未使用的資源
- 引入了對 `build.entitlements` 的支援
- 修復了一個錯誤,現在當 `docker compose down/stop -p` 執行時,Docker Compose 會忽略缺失的容器
- 修復了相容模式下 `--flag=value` 語法的支援
2.26.1
2024-03-29更新
- 依賴項升級:opencontainers/image-spec v1.1.0
錯誤修復和增強
- 在輸出中添加了映象拉取失敗原因
- 修復了在沒有構建和 watch 的情況下執行 `up` 時的崩潰
- 修復了在沒有 TTY 可用且選單啟用時的崩潰
- 改進了選單操作的可讀性
2.26.0
2024-03-22更新
- 依賴項升級:將 compose-go 提升到 v2.0.2
- 依賴項升級:將 docker 提升到 v26.0.0
錯誤修復和增強
- 減少了 Otel 跟蹤命令的超時
- 修復了 `config --format json`
- 修復了預設構建映象名稱的文件
- 引入了 Compose 中用於繫結掛載的同步檔案共享
- 添加了對 `annotations` 的支援
- 引入了 `config --variables` 以列出 Compose 模型變數
- 在 `docker compose up` 中添加了導航選單
2.25.0
2024-03-15更新
- 依賴項升級:將 compose-go 提升到 v2.0.0
錯誤修復和增強
- 恢復了 `config` 行為,直到設定 `--no-interpolate`
- 修復了服務名稱 shell 補全
- 為 `up` 命令添加了 `--watch` 標誌
2.24.7
2024-03-06更新
- 依賴項升級:將 golang 提升到 1.21.8
- 依賴項升級:將 compose-go 提升到 2.0.0-rc8
- 依賴項升級:將 docker 提升到 v24.0.4
錯誤修復和增強
- Compose 現在確保網路具有穩定的優先順序排序
- 修復了預設值中帶大括號(例如 JSON)的插值
- 修復了非唯一 `container_name` 值的驗證
- 修復了 `develop.watch` 的驗證
- 修復了 `include` 的環境載入
- 修復了合併標籤/網路時的 panic
- 添加了對使用 `include` 時 `--no-path-resolution` 的支援
- 修復了缺失專案名稱的錯誤
- 修復了 `config` 上的 `--no-interpolate` 標誌
- 為 Windows 上的 Watch 模式的檔案鎖問題添加了一個 workaround
- 修復了重複的退出程式碼狀態訊息
- Compose 現在在 `up` 時遵守 `COMPOSE_REMOVE_ORPHANS`
2.24.6
2024-02-15更新
- 依賴項升級:將 cli 提升到 25.0.3
- 依賴項升級:將 compose-go 提升到 2.0.0-rc.7
錯誤修復和增強
- 修復了當專案檔案透過 `COMPOSE_FILE` 變數設定時 `.env` 檔案載入的問題
- 使 `ps --status=exited` 行為與 Docker CLI 行為保持一致
- 修復了收集大量日誌時的死鎖
2.24.5
2024-01-30錯誤修復和增強
- 修復了在 Windows 上構建映象時“failed to solve: changes out of order”錯誤。
2.24.4
2024-01-29更新
- 依賴項升級:將 cli 提升到 25.0.1
- 依賴項升級:將 docker 提升到 25.0.1
- 依賴項升級:將 compose-go 提升到 2.0.0-rc.3
錯誤修復和增強
- 修復了在 swarm 啟用時檢查外部網路是否存在的問題。
- 添加了對 `storage_opt` 屬性的支援。
2.24.3
2024-01-24此版本修復了 Compose v2.24.0 中引入的 Windows 版 Docker Desktop 的構建問題。
更新
- Compose 現在使用自定義版本的 `fsutils` 庫。
2.24.2
2024-01-22更新
- 依賴項升級:將 cli 提升到 25.0.0 GA
- 依賴項升級:將 compose-go 提升到 2.0.0-rc.2
2.24.1
2024-01-18更新
- 依賴項升級:將 cli 提升到 25.0.0-rc3
- 依賴項升級:將 docker 提升到 25.0.0-rc3
- 依賴項升級:將 compose-go 提升到 2.0.0-rc.1
- 依賴項升級:將 containerd 提升到 1.7.12
錯誤修復和增強
- 重新設計了 `up` 期間容器狀態的顯示
- 修復了使用 `healthcheck.start_interval` 所需的引擎版本
- 從 `alpha` 命令中移除了 `watch` 子命令
- 修復了處理接收訊號時的錯誤
2.24.0
2024-01-11更新
- 依賴項升級:將 cli 提升到 25.0.0-beta.3
- 依賴項升級:將 compose-go 提升到 2.0.0-beta.3
- 依賴項升級:將 golang 提升到 1.21.6
錯誤修復和增強
- 引入了 `docker compose attach` 以將本地標準輸入、輸出和錯誤流附加到服務的執行容器。
- 引入了 `docker compose stats` 以顯示容器資源使用統計資訊的即時流。
- 引入了 `docker compose ps --orphans` 以包含/排除未宣告的服務。
- 引入了 `docker compose logs --index` 以選擇副本容器。
- 引入了 `docker compose build --with-dependencies` 以同時構建依賴項。
- 為構建添加了源策略。
- 為 shell 補全包含了停用服務。
- 恢復了 ps JSON 輸出中的 `Project`。
- 為 AWS ECR 添加了 OCI 1.0 回退支援。
- 構建現在不需要解析環境。
- Compose 現在會在 `compose up` 的 SIGINT/SIGTERM 訊號上傳送取消事件。
- 修復了日誌,透過 `---verbose` 暴露服務埠。
- 修復了內聯和環境定義的配置,使其掛載在 /
下,直到設定了顯式目標。 - 修復了 `---pull always --no-build` 的組合。
- 修復了日誌印表機中的競態條件。
- 修復了當命令上下文被取消時 `docker compose up` 的拆卸。
2.23.3
2023-11-22更新
- 依賴項升級:將 buildx 提升到 v0.12.0
2.23.2
2023-11-21更新
- 依賴項升級:將 buildkit 提升到 0.12.3
- 依賴項升級:將 docker 提升到 24.0.7
- 依賴項升級:將 cli 提升到 24.0.7
- 依賴項升級:將 1.20.2 提升到 1.20.2
錯誤修復和增強
- Compose 現在支援 `builds.tags` 與 `push` 命令。
- Compose Watch 現在會在啟動時重新構建服務映象。
- 現在,`--remove-orphans` 不會將停用服務作為孤立服務進行管理。
- Compose 僅在至少有一個服務需要構建時顯示 `Building` 輸出日誌。
2.23.1
2023-11-16更新
- 依賴項升級:將 compose-go 提升到 v1.20.1
錯誤修復和增強
- 使 Compose 與 OCI 工件最佳實踐保持一致。
- 引入了 `---resolve-image-digests`,以便使用者在釋出 Compose 應用程式時可以按摘要密封服務映象。
- 改進了 Compose Watch 配置日誌記錄。
- Compose 現在會拒絕使用 `secrets|configs.driver` 或 `template_driver` 的 Compose 檔案。
- 如果缺少依賴項,Compose 現在將無法啟動。
- 修復了 SIGTERM 支援以停止/殺死堆疊。
- 修復了 `--hash` 的迴歸。
- 修復了當外部網路位於受監控的服務上時,“應用程式更新後未能啟動”的問題。
- 修復了 `--pull` 文件。
- 透過在 cmd/compose/build.go 中新增換行符來修復顯示。
- Compose 在應用過濾器後呈現為靜默。
- 從 docker-compose up 輸出中去除了專案字首。
2.23.0
2023-10-18更新
- 依賴項升級:將 compose-go 提升到 v1.20.0
- 依賴項升級:將 containerd 提升到 1.7.7
錯誤修復和增強
- 添加了對釋出命令的空執行支援
- 添加了 `COMPOSE_ENV_FILES` 環境變數以傳遞環境變數檔案列表
- 為 `compose watch` 添加了 `sync+restart` 操作
- 使 `compose ps` 輸出與 Docker CLI 預設對齊,並引入了 `--no-trunc` 以保持以前的行為
- 修復了 `up` 和 `configure` 之間雜湊不一致的問題
- 當 `down` 與顯式服務名稱一起執行時啟用了配置檔案
- 修復了提供的拉取策略無效時的問題
2.22.0
2023-09-21注意`watch` 命令現已普遍可用 (GA)。您可以直接從根命令 `docker compose watch` 使用它。有關更多資訊,請參閱 檔案監視。
更新
- 依賴項升級:將 golang 提升到 1.21.1
- 依賴項升級:將 compose-go 提升到 v1.19.0
- 依賴項升級:將 buildkit 提升到 v0.12.2
錯誤修復和增強
- 添加了對 `publish` 命令的實驗性支援。
- `watch` 命令現在在啟動時構建並啟動專案。
- 為 `--pull` 標誌添加了 `policy` 選項。
- 修復了 `up` 命令在退出時的各種競態和死鎖條件。
- 修復了構建時的多平臺問題。
- 即使未啟用其 `profiles`,也會啟用明確請求的服務。
- 修復了當宣告的 `env_file` 缺失時 `config` 問題。
- 將 BuildOptions 傳遞給 `up` 和 `run` 命令。
2.21.0
2023-08-30注意`docker compose ps` 和 `docker compose ps --format=json` 的格式已更改,以更好地與 `docker ps` 輸出對齊。請參閱 compose#10918。
更新
- 依賴項升級:將 compose-go 提升到 v1.18.3
錯誤修復和增強
- 更改了 `docker compose ps` 和 `docker compose ps --format=json` 的輸出,以與 Docker CLI 對齊。
- 添加了對多文件 YAML 檔案的支援。
- 添加了對從 Git 倉庫載入遠端 Compose 檔案(透過 `include`)(實驗性)的支援。
- 修復了構建過程中不正確的代理變數。
- 修復了容器退出時容器日誌被截斷的問題。
- 修復了在使用 `include` 和 `--profile` 時出現“無此類服務”的錯誤。
- 修復了使用 `include` 時 `.env` 覆蓋的問題。
2.20.3
2023-08-11更新
- 依賴項升級:將 golang 提升到 1.21.0
- 依賴項升級:將 compose-go 提升到 v1.18.1
- 依賴項升級:將 buildkit 提升到 v0.12.1
錯誤修復和增強
- 提高了 `watch` 同步的速度和可靠性。
- 在第一行構建中添加了構建器名稱。
- 改進了 `--project-directory` 和 `--profile` 的 shell 補全。
- 修復了代理配置未傳遞給舊版構建器的構建問題。
- 移除了可選依賴項成功存在時不必要的警告。
2.20.2
2023-07-19錯誤修復和增強
- 添加了對 `depends_on.required` 屬性的支援。
- 修復了構建嘗試推送未命名服務映象的問題。
- 修復了未檢查 Windows 上目標 secret 路徑的錯誤。
- 修復了使用 `extends.file` 的服務解析構建上下文路徑的錯誤。
2.20.1
2023-07-18更新
- 依賴項升級:將 golang 提升到 1.20.6
- 依賴項升級:將 buildx 提升到 v0.11.2
- 依賴項升級:將 buildkit 提升到 v0.12
- 依賴項升級:將 docker-cli 提升到 v24.0.5-dev
2.20.0
2023-07-11更新
- 依賴項升級:將 docker/cli-docs-tools 提升到 v0.6.0
- 依賴項升級:將 docker 提升到 v24.0.4
- 依賴項升級:將 buildx 提升到 v0.11.1
錯誤修復和增強
- 引入了 `wait` 命令。
- 為 `build` 命令添加了對 `--builder` 和 `BUILDX_BUILDER` 的支援。
- 添加了對 Compose 規範中 `include` 和 `attach` 屬性的支援。
- 修復了初始化 CLI 客戶端時的 DryRun 模式問題。
- 修復了當服務有多個網路時隨機缺少網路的錯誤。
- 修復了 Secrets 檔案許可權值以符合 Compose 規範。
- 修復了 `no-deps` 標誌未應用的問題。
- 修復了一些原始碼註釋。
- 修復了當 `--index` 未設定選擇時的錯誤。
- 修復了 wait e2e 測試中的程序洩漏。
- 提高了一些測試速度。
2.19.1
2023-06-29更新
- 依賴項升級:將 compose-go 提升到 v1.15.1
錯誤修復和增強
- 修復了 `compose up` 上偶爾出現的“容器未連線到網路”錯誤。
- 修復了 `compose build` 上的“請指定構建上下文”錯誤。
- 當服務 `watch` 配置中使用了繫結掛載時,Compose 現在會發出警告。
2.19.0
2023-06-21更新
- 依賴項升級:將 compose-go 提升到 v1.15.0
- 依賴項升級:將 buildx 提升到 v0.11.0
- 依賴項升級:將 docker 提升到 v24.0.2
- 依賴項升級:將 golang 提升到 1.20.5
錯誤修復和增強
- 引入了透過 `compose down` 選擇單個服務停止的功能。
- 添加了 `--progress` 作為頂級標誌,用於配置進度 UI 樣式。
- 引入了 `run --cap-add` 以使用服務映象執行維護命令。
- 修復了 swarm 模式檢測期間的錯誤。
- 修復了透過 `COMPOSE_PROJECT_NAME` 環境變數設定專案名稱時的錯誤。
- 調整了 `down` 命令幫助中卷標誌的顯示。
- 修復了 `up` 命令中的錯誤,該命令不應靜默忽略缺失的 `depends_on` 服務。
- 使轉發訊號到容器的行為與 `docker run` 對齊。
- Compose 現在會檢測網路名稱衝突。
- 修復了有關現有卷的警告訊息中的拼寫錯誤。
- Compose 現在會檢測 `compose -p x logs -f` 命令後啟動的新服務。
- 修復了當 `compose` 用作專案名稱時的錯誤。
- 修復了 `watch` 命令中目錄不存在時的錯誤。
- 移除了重啟或停止服務時預設的 10 秒超時。
- 修復了 `watch` 中的錯誤,該錯誤預設應用了“rebuild”策略。
- 修復了當一個容器退出時等待容器的競態條件。
- 添加了一個警告,告知使用者 `build.secrets` 不支援 uid、gid、mode。
- 修復了 `watch` 中的錯誤,該錯誤監視了整個構建上下文而不是僅配置的路徑。
- Compose 現在按建立日期對容器進行排序,以首先縮減舊的容器。
- 修復了 Windows 環境下文件生成任務中的錯誤。
- 更新了文件以反映空執行模式功能已完成。
- 改進了網路標籤不匹配的診斷訊息。
- 修復了在沒有構建的情況下渲染 `Building` 部分的錯誤。
- 修復了程式碼覆蓋率指標中的錯誤。
- 添加了 OTEL 初始化。
- 添加了一個 GitHub 操作,以使用 Compose edge 版本觸發 Docker Desktop e2e 測試。
- 向 dependabot 添加了更多忽略規則。
2.18.1
2023-05-17錯誤修復和增強
- 修復了構建映象時“Image not found”錯誤
2.18.0
2023-05-16更新
- 依賴項升級:將 compose-go 提升到 v1.13.5
- 依賴項升級:將 buildkit 提升到 v0.11.6
- 依賴項升級:將 docker 提升到 v23.0.5
錯誤修復和增強
- 添加了使用 `--dry-run` 的空執行支援
- 添加了 `viz` 子命令的第一個 (alpha) 實現
- 引入了 `--no-path-resolution` 以跳過解析相對路徑
- 引入了 `COMPOSE_ANSI` 以定義 `--ansi` 的預設值
- 引入了 `COMPOSE_STATUS_STDOUT` 以將狀態訊息傳送到 stdout
- 修復了 BuildKit progressui 整合
- 修復了阻止事件迴圈收集日誌的錯誤
- 恢復了對 `--memory` 的支援
- 修復了容器終止後不停止的錯誤
- Compose 現在允許使用者宣告構建 secret 目標
- 修復了當配置未更改時導致容器重新建立的錯誤
- 修復了當 `--parallel` 與大量依賴服務一起使用時的競態條件
- Compose 現在會檢查本地映象是否與所需平臺匹配
- 修復了當 `compose down` 與 `--project-name` 一起執行時刪除本地映象的問題
- Compose 現在會檢測活動端點何時嘗試刪除網路,並跳過併發出警告
- 移除了不必要的 [] 輸出
- Compose 檢測到 Windows 終端不是 `console.File`,以避免 panic
- `--parallel` 現在優先於 `COMPOSE_PARALLEL_LIMIT`
- 當 Swarm 被停用時,Compose 現在會報告找不到外部網路
2.17.2
2023-03-26更新
- 依賴項升級:將 compose-go 提升到 v1.13.2
錯誤修復和增強
- 修復了目錄名稱中包含大寫字元或 `.` 時專案名稱無效的錯誤。修復了 compose#10405
2.17.1
2023-03-24更新
- 依賴項升級:將 buildkit 提升到 v0.11.5
- 依賴項升級:將 compose-go 提升到 v1.13.1
- 依賴項升級:將 golang 提升到 1.20.2
錯誤修復和增強
- 修復了 `alpha watch` 命令的 panic。Pull Request compose#10393
- 防止了名為 `extensions` 的服務衝突。修復了 compose-go#247
- Compose 現在更一致地驗證專案名稱。修復了 compose-go#363
2.17.0
2023-03-23升級注意事項
- 專案名稱驗證更加嚴格。專案名稱只能包含字母、數字、`_`、`-`,並且必須是小寫並以字母或數字開頭。
- YAML 中的布林欄位必須是 `true` 或 `false`。不再支援已棄用的 YAML 1.1 值,例如“on”或“no”。
- 重複的 YAML 合併鍵(`<<`)將被拒絕。
更新
- 依賴項升級:將 buildkit 提升到 v0.11.4
- 依賴項升級:將 buildx 提升到 v0.10.4
- 依賴項升級:將 containerd 提升到 1.6.18
- 依賴項升級:將 compose-go 提升到 v1.13.0
錯誤修復和增強
- 在 `up` 命令中引入了 `--wait-timeout`。修復了 compose#10269
- 使 `compose service --hash` 輸出按服務名稱排序。Pull Request compose#10278
- Compose 現在會渲染一個緊湊的 TUI 進度報告以監控層下載。Pull Request compose#10281
- 為 `depends_on` 引入了 `restart`。修復了 compose#10284
- 添加了對 `NO_COLOR` 環境變數的支援。修復了 compose#10340
- 進度寫入器現在使用 `dockercli.Err` 流。修復了 compose#10366
- 在 `build` 服務配置中添加了對 `additional_contexts` 的支援。修復了 compose#9461 compose#9961
- 在 `watch` 模式中添加了檔案刪除/重新命名處理。Pull Request compose#10386
- 在 `watch` 模式中引入了 `ignore` 屬性。Pull Request compose#10385
- Compose 現在使用進度寫入器顯示覆制狀態。Pull Request compose#10387
- 更新了 `-p`/`--project-name` 標誌的參考文件。修復了 docs#16915, compose-spec#311
- 引入了 `replace` 標籤以跟蹤服務的舊容器和新容器之間的關係。修復了 compose#9600
- 修復了服務重啟後依賴服務未重啟的錯誤。修復了 compose#10263
- Compose 現在在 `watch` 模式下忽略沒有構建部分的服務。修復了 compose#10270
- Compose 現在為偽子命令應用配置選項。修復了 compose#10286
- Compose 僅管理帶有 config_hash 標籤的容器(即由 compose 建立的)。修復了 compose#10317
- 如果專案名稱規範化後為空,Compose 會觸發錯誤。修復了 compose#10313
- Compose 透過檢查 `depends_on` 關係僅重啟所需的服務。修復了 compose#10337
- 修復了小型終端上的顯示問題。修復了 compose#10322
- 修復了構建已構建映象 ID 集合的問題。Pull Request compose#10372
- 使用配置的名稱分隔符定義一次性容器名稱。修復了 compose#10354
- 修復了重新建立容器時併發對映讀/寫問題。修復了 compose#10319
- Compose 現在支援 `stop` 和 `rm` 命令的空執行模式。Pull Request compose#10257
- Compose 現在支援 `pull` 命令的空執行模式。Pull Request compose#10341
- Compose 現在支援 `push` 命令的空執行模式。Pull Request compose#10355
- Compose 現在支援 `exec` 命令的空執行模式。Pull Request compose#10252
- Compose 現在支援 `restart` 命令的空執行模式。Pull Request compose#10339
2.16.0
2023-02-08更新
- 依賴項升級:將 docker 提升到 v23.0.0
- 依賴項升級:將 docker-cli 提升到 v23.0.0
- 依賴項升級:將 buildkit 提升到 v0.11.2
- 依賴項升級:將 buildx 提升到 v0.10.2
- 依賴項升級:將 containerd 提升到 1.6.16
- 依賴項升級:將 golang 提升到 1.20
錯誤修復和增強
- 為 `compose create` 命令引入了 `--remove-orphans`。修復了 compose#9718
- 當終端太小時,縮短了 TTY 輸出。修復了 compose#9962
- 添加了 `remove-orphans` 功能到執行。修復了 compose#9718
- 引入了實驗性 `watch` 命令。Pull Request compose#10163
- Compose 現在允許使用 `-t` 分配 TTY。修復了 compose#10161
- 引入了實驗性 `dry-run` 命令。Pull Request compose#10173
- 更新了文件以解釋配置並行性的方法。Pull Request compose#10198
- 使 `logs` 命令與 docker CLI 對齊,透過將 `-n` 別名為 `--tail`。修復了 compose#10199
- 添加了對 `docker compose build --push` 的支援。Pull Request compose#10148
- 為 `compose create` 命令添加了 `--scale`。修復了 compose#10208
- 將 `convert` 重新命名為 `config` 以與 Compose V1 UX 對齊。Pull Request compose#10214
- Compose 現在將代理配置作為構建引數傳遞。修復了 compose#8797
- 修復了 `compose up` 中的解析問題,透過忽略非 Compose 建立的容器。修復了 compose#10162
- 修復了日誌格式化程式初始化中的 goroutine 洩漏。修復了 compose#10157
- 修復了當所有正在執行的容器都已停止時 Compose 日誌不退出的問題。Pull Request compose#10181
- 修復了文件以反映 `docker compose ps` 與 `docker ps` 對齊。Pull Request compose#10195
- 修復了未找到遠端 Buildx 驅動程式的問題。修復了 compose#9893
- 改進了重新建立服務容器時的日誌記錄。Pull request compose#10236
- 修復了一個問題,現在 Compose 只等待與等待條件相關的容器。修復了 compose#10200
- Compose 現在阻止賦值給 nil 對映中的條目。修復了 compose#10244
- 為 Cucumber 測試添加了專門的 GitHub Actions 工作流程。Pull Request compose#10165
- 在切換到緊湊日誌模式時清理了 TUI 行。修復了 compose#10201
- 添加了 Tilt watcher 以在 watch 模式下檢測程式碼更改。Pull Request compose#10218
- Compose 現在支援 `kill` 命令的空執行模式。修復了 compose#10210
- Compose 現在支援 `pause` 命令的空執行模式。修復了 compose#10217
- Compose 現在支援 `cp` 命令的空執行模式。修復了 compose#10235
2.15.1
2023-01-09更新
- 依賴項升級以修復 Golan CVE-2022-27664 和 CVE-2022-32149
錯誤修復和增強
- 添加了對 UTS 名稱空間的支援。修復了 compose#8408
- 修復了未設定過濾器時的過濾問題。修復了 roadmap#418
- 修復了構建步驟期間併發對映寫入問題。Pull Request compose#10151
- 修復了 stdin 不是終端時的問題。修復了 compose#9739
2.15.0
2023-01-05更新
- 依賴項升級:將 compose-go 提升到 v1.8.1
- 依賴項升級:將 cli-docs-tool 提升到 0.5.1
錯誤修復和增強
- 添加了 `service.build` 部分中 `privileged` 屬性的支援。Pull Request compose#10112
- 引入了 `--ignore-buildable` 以在拉取時忽略可構建映象。修復了 compose#8805
- 引入了 `--no-attach` 以忽略某些服務輸出。修復了 compose#8546
- 修復了當 `driver:none` 設定時 `logs` 的問題。修復了 compose#9030
- Compose 現在依賴於 dockerCLI.streams。Pull Request compose#10082
- 修復了服務雜湊必須排除副本的問題。修復了 compose#10077
- Compose 現在根據專案檢查服務名稱,而不是執行中的容器。修復了 compose#9951
- 修復了安全選項支援(seccomp 和 unconfined)。修復了 compose#9505
- 修復了在使用 compose config 時如果原始檔較小則檔案為空的問題。修復了 compose#10121
- 修復了 `compose up` 未應用 `--pull` 的問題。修復了 compose#10125
- Compose 不僅應該忽略自動刪除的容器,還應該忽略“正在刪除”的孤立容器。Pull Request compose#10136
- Compose 根據 `--parallel` 限制構建併發。修復了 compose#9091
2.14.2
2022-12-20更新
- 依賴項升級:將 containerd 提升到 1.6.14
錯誤修復和增強
- Compose 現在使用 DOCKER_DEFAULT_PLATFORM 來確定建立容器時的平臺。修復了 compose#10041
- Compose 現在檢測到依賴項啟動失敗。修復了 compose#9732
- 修復了 WCOW 卷掛載。修復了 compose#9577
- 使用 `--all=false` 時僅列出正在執行的容器。修復了 compose#10085
- 修復了執行 `pull --ignore-pull-failures` 時的迴歸問題。修復了 compose#10089
- 修復了 CPU 配額問題。修復了 compose#10073
- 修復了 compose logs 上的競態條件。修復了 compose#8880
- 透過將 `projectOptions` 重新命名為 `ProjectOptions` 使其公開。修復了 compose#100102
2.14.1
2022-12-15更新
- 依賴項升級:將 Go 提升到 1.19.4
- 依賴項升級:將 containerd 提升到 1.6.12
錯誤修復和增強
- 添加了 `--parallel` 以限制併發引擎呼叫。Pull Request compose#10030
- 區分了 `up` 日誌中的 stdout 和 stderr。修復了 compose#8098
- 使 `compose ps` 輸出與 `docker ps` 對齊。修復了 compose#6867
- 為 push 命令添加了 `--include-deps`。Pull Request compose#10044
- 在 `compose up` 上引入了 `--timestamp` 選項。修復了 compose#5730
- Compose 現在在從環境中建立 secret 時應用 uid/gid。Pull Request compose#10084
- 修復了等待附加依賴項時的死鎖。修復了 compose#10021
- 修復了收集已拉取映象 ID 時的競態條件。修復了 compose#9897
- Compose 不會停止可構建映象的 `pull` 命令。修復了 compose#8724
- 修復了沒有容器可附加的邊緣情況。修復了 compose#8752
- Compose 容器的啟動必須按順序執行,以便引擎在配置範圍內分配不同的埠。修復了 compose#8530
- 修復了 `repository:tag` 的解析。修復了 compose#9208
- 當用戶明確設定時,從檔案載入專案。修復了 compose#9554
2.14.0
2022-12-02更新
- 依賴項升級:將 compose-go 提升到 v1.8.0
- 依賴項升級:將 Go 提升到 1.19.3
錯誤修復和增強
- 為服務定義添加了 `oom_score_adj` 欄位。Pull Request compose#10019
- 為 tmpfs 掛載許可權添加了 mode 欄位。Pull Request compose#10031
- Compose 現在僅在中斷時停止由 `up` 啟動的服務。修復了 compose#10028
- Compose 現在為目標服務載入隱式配置檔案。修復了 compose#10025
- 如果設定了 `service.platform`,Compose 不要求設定 `service.build.platforms`。修復了 compose#10017
- 如果設定了 `--ansi=never`,則在 buildx 映象構建期間使用純文字輸出。修復了 compose#10020
- `COMPOSE_IGNORE_ORPHANS` 環境變數現在行為更一致。修復了 compose#10035
- Compose 現在在 `convert` 中使用正確的映象名稱分隔符。修復了 compose#9904
- 修復了 `run` 用於使用 `network_mode: service:NAME` 的服務。修復了 compose#10036
2.13.0
2022-11-23更新
- 依賴項升級:將 containerd 提升到 1.6.10
- 依賴項升級:將 docker-credential-helpers 提升到 v0.7.0
- 更新 CI 依賴項。Pull Request compose#9982
錯誤修復和增強
- 為 `convert` 命令添加了 `no-consistency` 選項。修復了 compose#9963
- 為 `run` 命令添加了 `build` 選項。修復了 compose#10003
- 修復了將
restart_policy.condition
對映到引擎支援的值。修復了 compose#8756,docs#15936 - 修復了缺少對
deploy.reservation.memory
的支援。修復了 compose#9902 - 修復了一個錯誤,該錯誤在使用
--profile
引數時會阻止使用COMPOSE_PROFILES
。修復了 compose#9895 - 修復了一個錯誤,該錯誤在服務依賴於將構建此映象的服務時會阻止拉取服務的映象。修復了 compose#9983
- 修復了找不到容器編號標籤時的解析問題。修復了 compose#10004
- 當未定義
service.platform
時,Compose 現在使用DOCKER_DEFAULT_PLATFORM
定義的平臺值。修復了 compose#9889 - 刪除了已棄用的依賴項
gotest.tools
v2 的使用。拉取請求 compose#9935 - 將標記為
kind/feature
的問題從過期機器人程序中排除。修復了 compose#9988
2.12.2
2022-10-21更新
- 更新了 Docker Engine API,以恢復對 Linux 打包所需的 Golang 1.18 的相容性。拉取請求 compose#9940
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.12.2 釋出頁面。
2.12.1
2022-10-21安全性
- 更新了 Docker Engine API,以應用 CVE-2022-39253 的修復。拉取請求 compose#9934
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.12.1 釋出頁面。
2.12.0
2022-10-18更新
CI 更新到文件儲存庫路徑
將 compose-go 從 1.5.1 升級到 1.6.0
更新到 go 1.19.2,以解決 CVE-2022-2879、CVE-2022-2880、CVE-2022-41715
錯誤修復和增強
- 在推送映象時添加了
quiet
選項。修復了 compose#9089 - 修復了
port
命令的誤導性錯誤訊息。拉取請求 compose#9909 - 修復了一個錯誤,以防止 Compose 嘗試刪除不存在的容器時失敗。由 compose#9896 修復
- 切換了 GitHub 問題模板形式
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.12.0 釋出頁面。
2.11.2
2022-09-27注意
- 環境檔案語法和插值更新:請參閱 compose#9879
- Compose v2 中不支援透過
.env
檔案設定DOCKER_HOST
更新
- 將 compose-go 從 1.5.1 升級到 1.6.0
錯誤修復和增強
- 修復了一個錯誤,以防止在有效的環境變數值上出現“無效模板”錯誤。修復了 compose##9806、compose##9746、compose##9704、compose##9294
- 修復了一個錯誤,以確保使用
docker compose build
的新映象。修復了 compose#9856 - 修復了未設定
DOCKER_DEFAULT_PLATFORM
時的跨架構構建問題。修復了 compose#9864 - 修復了使用
depends_on
時間歇性衝突錯誤。修復了 compose#9014 - 當入口點被覆蓋時,清除服務
CMD
。修復了 compose#9622 - 當未定義
build.platforms
時,配置了預設構建器匯出。修復了 compose#9856 - 修復了一個錯誤,以優先透過 DOCKER_DEFAULT_PLATFORM 或
service.platform
屬性保留定義的平臺。修復了 compose#9864 - 刪除了對
.env
檔案中DOCKER_HOST
的支援。修復了 compose#9210 - 修復了一個錯誤,以確保如果在執行命令中覆蓋了入口點,則服務命令乾淨。修復了 compose#9622
- 依賴項:修復了圖遍歷期間的競態條件。修復了 compose#9014
- CI 現在在 Windows 和 macOS 上執行,包括透過 Docker Desktop 的 E2E 測試
- 當
service.platform
不屬於service.build.platforms
時,添加了更多資訊 - GitHub 工作流安全強化
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.11.2 釋出頁面。
2.11.1
2022-09-20錯誤修復和增強
- 修復了一個錯誤,以在服務具有
volumes_from
時保留depends_on
條件。修復了 compose#9843 - 修復了一個錯誤,以在構建期間如果未構建平臺,則保留服務級別定義的平臺。由 compose#9729 修復
- 修復了一個錯誤,以在構建期間如果未提供構建平臺,則透過 DOCKER_DEFAULT_PLATFORM 保留定義的平臺。修復了 compose#9853
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.11.1 釋出頁面。
2.11.0
2022-09-14更新
- 依賴項升級:將 Golang 提升到 1.19.1
- 依賴項升級:將 github.com/docker/go-units 從 0.4.0 提升到 0.5.0
- 依賴項升級:將 github.com/cnabio/cnab-to-oci 從 0.3.6 提升到 0.3.7
- 依賴項升級:將 go.opentelemetry.io/otel 從 1.9.0 提升到 1.10.0
- 依賴項升級:將 github.com/AlecAivazis/survey/v2 從 2.3.5 提升
- 依賴項升級:將 go.opentelemetry.io/otel 從 1.4.1 提升到 1.9.0
- 依賴項升級:將 compose-go 從 1.5.0 提升到 1.5.1
錯誤修復和增強
- 添加了平臺構建。修復了 compose-spec#267
- 日誌現在過濾到當前 Compose 檔案中的服務。修復了 compose#9801
- 在拉取映象時添加了改進的輸出警告。修復了 compose#9820
- 修復了一個錯誤,以確保服務有依賴項時正確捕獲退出程式碼。修復了 compose#9778
- 修復了
down
與--rmi
。修復了 compose#9655 - 修復了 docker-compose convert 在使用 --no-interpolate 選項時將 $ 轉換為 $$ 的問題。修復了 compose#9160
- 修復了
build.go
直接訪問自定義標籤導致 panic 的問題。請參閱 compose#9810 - 將新載入的環境變數應用於“DockerCli”和“APIClient”。修復了 compose#9210
- 在
compose start [services]
上只嘗試啟動指定的服務。修復了 compose#9796 compose#9807 - 標記已構建的映象,以便在
down
時可靠清理。修復了 compose#9655
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.11.0 釋出頁面。
2.10.2
2022-08-26錯誤修復和增強
- 正確遵守
DOCKER_TLS_VERIFY
和DOCKER_CERT_PATH
環境變數。修復了 compose#9789。 - 改進了 docker/docker-ce-packaging#742 中使用的
Makefile
。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.10.2 釋出頁面。
2.10.1
2022-08-24更新
- 依賴項更新:將 github.com/moby/buildkit 從 0.10.3 提升到 0.10.4。
錯誤修復和增強
- 修復了當未設定
pull_policy
時映象拉取被跳過的問題。修復了 compose#9773。 - 恢復了釋出工件中的
.sha256
校驗和檔案。修復了 compose#9772。 - 刪除了使用 --exit-code-from 時顯示退出程式碼的錯誤訊息。修復了 compose#9782。
- 修復了
compose pull
,使其即使在本地存在映象時,如果tag=latest
也會拉取映象。 - CI:修復了校驗和檢查並恢復了單獨的校驗和檔案。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.10.1 釋出頁面。
2.10.0
2022-08-19新增
- 將新載入的環境變數應用於
DockerCli
和APIClient
。修復了 compose#9210。 - 添加了對 windows/arm64 和 linux/riscv64 的支援。
更新
- 將 Dockerfile 語法更新到最新穩定版並重命名了 docs Dockerfile。
- 依賴項更新:升級 BuildKit 和 docker/distribution。
- 依賴項更新:將 CI 中使用的 Docker CLI 版本更新到 v20.10.17。
- 依賴項更新:將 github.com/containerd/containerd 從 1.6.6 提升到 1.6.7。
- 依賴項更新:將 github.com/containerd/containerd 從 1.6.7 提升到 1.6.8。
- 依賴項更新:提升到 Go 1.18.5。
- 依賴項更新:將 github.com/cnabio/cnab-to-oci 從 0.3.5 提升到 0.3.6。
錯誤修復和增強
- 將環境變數優先順序恢復為作業系統高於
.env
檔案。修復了 compose#9737。 - 更新了用法字串以保持一致性。
- 在 Windows 上不區分大小寫地解析環境變數。修復了 compose#9431。
- 修復了
compose up
,以便在發出停止訊號時不會停止依賴容器。這與 v1 的行為保持一致。 - 修復了 compose#9696。
- 修復了 start/restart/pause/unpause 命令,以便如果從 Compose 檔案執行,也會應用 Compose 模型。修復了 compose#9705 和 compose#9705。
- 刪除了某些子命令幫助文字中多餘的空格。
- 修復了
compose create
,使其在命令列中的值配置為預設值時不會覆蓋服務拉取策略。修復了 compose#9717。 - 過濾掉“commandConn.Close- warning”訊息。修復了 compose#8544。
- 修復了 up/start/run 不等待停用的依賴項。修復了 compose#9591。
- 在
compose kill
上應用 Compose 模型,添加了--remove-orphans
選項。修復了 compose#9742。 - 修復了
compose pull
,以避免多次拉取相同的映象。修復了 compose#8768。 - 將 golangci-lint 版本固定到 v1.47.3,v1.48.0 暫時有問題。
有關完整的更改日誌,請檢視 Compose 儲存庫 2.10.0 釋出頁面。
2.9.0
2022-08-7重要Compose v2.9.0 包含對環境變數優先順序的更改,這些更改後來已被恢復。我們建議使用 v2.10+ 以避免相容性問題。
注意此版本撤消了 Compose v2.8.0 中由
compose-go v1.3.0
引入的破壞性更改。
更新
- 更新了
compose-go
到 v1.4.0,因為以前的版本引入了破壞性更改。修復了 compose#9700。
錯誤修復和增強
- 覆蓋了
compose version
的父命令 PreRun 程式碼。修復了 compose#9698。 - 修復了 V2 中的
LinkLocalIPs
。修復了 compose#9692。 - 連結到
BUILDING.md
以獲取測試說明。修復了 compose#9439。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.9.0 釋出頁面。
2.8.0
2022-07-29重要此版本透過
compose-go v1.3.0
和此 PR 引入了一項破壞性更改。在此版本中,Docker Compose 使用新名稱(使用-
(破折號)而不是_
(下劃線))重新建立新資源(網路、卷、秘鑰、配置等),並嘗試連線或使用這些新建立的資源而不是您現有的資源!請改為使用 Compose v2.9.0 版本。
新增
- 引入了
--pull
標誌,以允許強制拉取更新的服務映象。修復了 compose#9451。 - 透過新增
gocritic
到 linters 來提高程式碼質量。
錯誤修復和增強
- 修復了插值錯誤訊息輸出。修復了 compose-spec/compose-go#292。
- 定義了環境變數評估的優先順序。修復了 compose#9521、compose#9638、compose#9608、compose#9578、compose#9468 和 compose#9683。
- 文件 CI:修復了在建立 PR 時使用 push-to-fork。
- 使用了 golang 版本的環境變數,並將 GitHub Actions 從 v2 更新到 v3。
- 使用 google/addlicense 而不是 kunalkushwaha/ltag。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.8.0 釋出頁面。
2.7.0
2022-07-20新增
- 在構建步驟中添加了對環境秘鑰的支援。修復了 compose#9606。
更新
- 依賴項升級:將 go 提升到 1.18.4。
- 依賴項升級:將 compose-go 提升到 v1.2.9。
錯誤修復和增強
- 網路:防止因重複名稱引起的問題。修復了 moby/moby#18864。
- 修復了
compose up
和compose down
命令中關閉網路名稱的問題。修復了 compose#9630。 - 在執行
compose up --wait
時,對一次性容器使用了適當的依賴條件。修復了 compose#9606。 - 修復了環境變數擴充套件。
- 在一致性檢查中驗證了依賴服務是否存在。修復了 compose#8910。
- 修復了環境變數值中的雜湊使用。修復了 compose#9509。
- Docker Build:為經典構建器添加了修復,以遵守依賴順序。修復了 compose#8538。
- 修復了空字串引數導致的 panic。修復了 compose-switch#35。
- 修復了 start/restart,使其不會影響一次性容器。修復了 compose#9509。
- 修復了當
volumes_from
目標是容器而不是服務時保留容器引用。修復了 compose#8874。 - build.go:添加了修復以在
CustomLabels
對映為nil
時進行初始化。 - 添加了新目標,以在執行 e2e 測試之前構建 Compose 二進位制檔案。
- CI:釋出了工作流,以在 docs 儲存庫上開啟一個帶有最新更改的 PR。
- e2e:添加了
ps
的測試。 - e2e:拆分暫停測試並新增更多用例。
- e2e:新增更多 start/stop 測試用例。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.7.0 釋出頁面。
2.6.1
2022-06-23新增
- 添加了對從環境變數設定秘鑰的支援。修復了 compose-spec/compose-spec#251。
更新
- 升級:compose-go v1.2.8。
- 升級:buildx v0.8.2。
- 依賴項升級:將 runc 提升到 1.1.2。
- 依賴項升級:將 golang 提升到 1.18.3。
- 依賴項升級:將 compose-go 提升到 v1.2.8。
- 依賴項升級:將 github.com/theupdateframework/notary 從 0.6.1 提升到 0.7.0。
- 依賴項升級:將 github.com/cnabio/cnab-to-oci 從 0.3.1-beta1 提升到 0.3.3。
- 依賴項升級:將 github.com/hashicorp/go-version 從 1.3.0 提升到 1.5.0。
- 依賴項升級:將 github.com/stretchr/testify 從 1.7.0 提升到 1.7.2。
- 依賴項升級:將 github.com/docker/buildx 從 0.8.1 提升到 0.8.2。
- 依賴項升級:將 github.com/AlecAivazis/survey/v2 從 2.3.2 提升到 2.3.5。
- 依賴項升級:將 github.com/containerd/containerd 從 1.6.2 提升到 1.6.6。
錯誤修復和增強
- 添加了容器建立請求的連結。修復了 #9513。
- 修復了
compose run
,使其僅啟動直接依賴項。修復了 #9459。 - 修復了使用
--no-deps
選項時compose up
出現的“服務未找到”錯誤。修復了 #9427。 - 修復了
compose down
,使其遵守COMPOSE_REMOVE_ORPHANS
環境變數。修復了 #9562。 - 修復了專案級別繫結掛載卷。修復了 docker/for-mac#6317。
- 修復了
deploy.limits.cpus
和deploy.limits.pids
屬性的解析,使其遵守浮點值。修復了 #9542 和 #9501。 - 修復了
compose ps
輸出以列出所有暴露的埠。修復了 #9257。 - 修復了
compose ps
程式碼中的拼寫錯誤。 - 修復了
docker compose
,使其即使在請求棄用選項時也遵守--no-ansi
。 - 修復了網路名稱和網路 ID 可能的歧義。
- e2e:添加了
ps
的測試。 - e2e:將 json 解組到容器摘要中。
- e2e:修復了子測試和塊並行不安全測試。
- e2e:隔離了測試命令環境與系統環境。
- e2e:修復了偶發性
ps
失敗。 - e2e:確保所有 compose 命令獨立相容。
- e2e:改進了失敗時的測試輸出。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.6.1 釋出頁面。
2.6.0
2022-05-30新增
- 向構建部分添加了 tags 屬性。在此屬性中,可以定義要應用於最終映象的標籤,除了 image 屬性中定義的標籤。
- 添加了端到端測試,以確保環境變數優先順序沒有迴歸。
- 添加了 ddev 的端到端測試。
更新
- 依賴項更新:將 compose-go 提升到 1.2.6。
- 依賴項更新:將 compose-go 提升到 1.2.7。
- 依賴項更新:將 golang 提升到 1.18。
錯誤修復和增強
- 修復了
compose up
,使其僅附加到專案中宣告的、啟用了配置檔案的服務。修復了 #9286。 - 修復了從多個服務拉取相同映象時閃爍的提示。修復了 #9469。
- 修復了 compose go 以將 .env 檔案匯入到 OS 環境,以允許透過此檔案設定變數(例如 DOCKER_BUILDKIT)。修復了 #9345。
- 修復了本地失敗的
TestLocalComposeUp
。 - 修復了本地執行的 make
e2e-compose-standalone
。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.6.0 釋出頁面。
2.5.1
2022-05-17更新
- 依賴項更新:將 compose-go 提升到 1.2.5。
錯誤修復和增強
- 修復了當使用 '--env-file' 宣告相對路徑時,專案工作指令絕對路徑的解析。修復了 docker/for-mac#6229。
- 修復了
compose down
:現在拒絕所有引數以闡明用法。修復了 #9151。 - 修復了
compose down
:現在如果沒有要刪除的內容,則以 status=0 退出。修復了 #9426。 - 修復了使用 --no-log-prefix 選項時日誌輸出行中多餘的空格。修復了 #9464。
- 澄清了傳遞多個 compose 檔案時的預設工作目錄。
- cp 命令:預設行為是將檔案複製到服務的所有容器。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.5.1 釋出頁面。
2.5.0
2022-04-29錯誤修復和增強
- 修復了
compose down
命令在指定-p
標誌時出現的 panic。修復了 #9353。 - 將新建立的專案作為輸入傳遞給啟動服務(
docker compose up
)。修復了 #9356。 - 將 docker-compose 檔案中 links 下宣告的服務包含為隱式依賴項。修復了 #9301。
- 對
docker compose pull
命令進行了更改,以遵守定義的策略:1)跳過配置為pull_policy: never
的服務;2)忽略具有現有映象且pull_policy: missing
的服務。修復了 #3660。 - 不再忽略從資源構建專案時的錯誤,以防止
down
panic。修復了 #9383。 - 強制專案名稱為小寫。修復了 #9378。
- 添加了對構建時秘鑰的支援。修復了 #6358。
- 更改了
compose-go
,以允許(重新)構建卷字串,以便在無法使用掛載時由引擎bind
API 使用。修復了 #9380。 - 提供了 checksums.txt 檔案並添加了
--binary
以允許在不同作業系統中進行驗證。修復了 #9388。 - 添加了更改,以便檢查本地拉取映象的 ID 並將其持久化到
com.docker.compose.image
。修復了 #9357。 - 修復了 IPAM 閘道器設定問題。修復了 #9330。
- 添加了對 ppc64le 架構的 docker compose 二進位制檔案的支援。
- 修復了
--no-TTY
文件中的搜尋/替換拼寫錯誤。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.5.0 釋出頁面。
2.4.1
2022-04-04錯誤修復和增強
- 在執行帶有
--rm flag
的容器時,將--rm flag
值按原樣傳遞給 Docker CLI。修復了 #9314。 - 在從
docker compose up
命令構建映象時,將 ssh 配置新增到構建選項。修復了 #9338。 - 添加了對容器的檢查,以檢視是否需要 TTY。現在,執行指定了
tty:true
的服務會顯示控制檯輸出。修復了 #9288。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.4.1 釋出頁面。
2.4.0
2022-04-1更新
- 依賴項更新:將 buildx 提升到 v0.8.1,以修復處理構建上下文掃描錯誤時可能發生的 panic。
錯誤修復和增強
- 將互動式標誌 '-i' 從 Compose CLI 傳遞到 Docker CLI 以執行 exec 命令。修復了 #9315。
- Compose 命令現在考慮
COMPOSE_PROJECT_NAME
環境變數的值。修復了 #9316。 - 修復了
compose down
命令在沒有啟動任何服務或沒有要刪除的資源的情況下執行時返回錯誤的問題。錯誤是由於命令嘗試刪除不存在的預設網路造成的。修復了 #9333。 - 引入了對構建部分中
cache_from
、cache_to
、no_cache
和pull
屬性的支援。這些屬性允許強制從源完全重新構建並檢查登錄檔以查詢使用的映象。這些更改為將來為 compose build(或等效)命令提供--no-cache
和--pull
選項奠定了基礎。 - 引入了對 CLI 和 Compose 檔案中
build
命令的--ssh
標誌的支援。修復了 #7025。 - 修復了
--ssh
標誌描述中的拼寫錯誤。與 #7025 相關。 - 將 Kubernetes 依賴項固定到與 buildx 中相同的版本。
- 將互動式標誌從 Compose CLI 傳遞到 Docker CLI 以執行 exec 命令。
- 修復了並行執行 start-stop 端到端測試時的競態條件。
- 刪除了有關過時警告的程式碼。
- 供應商:github.com/containerd/containerd v1.6.2。包括對 CVE-2022-24769 的修復(不影響我們的程式碼庫)。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.4.0 釋出頁面。
2.3.4
2022-03-25新增
- 引入了更改,以使用 docker/cli 中的 RunExec 和 RunStart 來處理所有互動式/tty/* 終端邏輯。
已移除
- 現在刪除沒有候選容器的容器會產生警告而不是錯誤。修復了 #9255。
- 從執行和 exec 命令的 -i 和 -t 選項中刪除了“已棄用”提及。這些選項預設啟用並正在使用中。修復了 #9229。
- 從 --filter 標誌中刪除了“已棄用”提及,以保持與其他命令的一致性。
- 刪除了執行 'docker compose kill' 時獲取原始 compose.yaml 檔案的需要。
更新
- 依賴項更新:將 github.com/spf13/cobra 從 1.3.0 提升到 1.4.0。Cobra 庫不再需要 Viper 及其所有間接依賴項 請參閱 cobra 的釋出頁面。
- 依賴項更新:將 buildx 從 v0.7.1 提升到 v0.8.0。
錯誤修復和增強
- 恢復了 'compose up -d' 的行為,即使用重新整理內容重新建立 compose 檔案映象的容器。修復了 #9259。
- Docker compose --status、--filter 和 --format 標誌文件更新。
docker compose down -v
現在不再刪除外部卷和網路,因為這符合選項的預期和文件行為。每當指定專案時,現在也用於強制 down 僅刪除 compose.yaml 檔案中列出的資源。修復了 #9172,#9145。- 更改了 Compose API 參考文件自動化,以獲取程式碼與文件的差異。
有關完整的更改日誌或附加資訊,請檢視 Compose 儲存庫 2.3.4 釋出頁面。
其他版本
(2022-03-8 至 2022-04-14)
對於 1.29.2 之後和 2.3.4 之前的版本,請檢視 Compose 儲存庫釋出頁面。
1.29.2
(2021-05-10)
雜項
刪除了
up
命令中使用docker-compose
的提示。將
requirements-indirect.txt
中的py
提升到1.10.0
。
1.29.1
(2021-04-13)
錯誤
修復了 Windows 構建中無效處理程式警告。
修復了配置雜湊以在 IPC 模式更新時觸發容器重新建立。
修復了
placement.max_replicas_per_node
的轉換對映。刪除了構建時多餘的掃描建議。
1.29.0
(2021-04-06)
特性
向
docker-compose config
添加了配置檔案過濾器。添加了一個
depends_on
條件,以等待服務成功完成。
雜項
在構建時添加了映象掃描訊息。
更新了
--no-ansi
的警告訊息,以提及--ansi never
作為替代。將 docker-py 提升到 5.0.0。
將 PyYAML 提升到 5.4.1。
將 python-dotenv 提升到 0.17.0。
1.28.6
(2021-03-23)
錯誤修復
使
--env-file
相對於當前工作目錄。現在,透過--env-file
設定的環境檔案路徑相對於當前工作目錄,並覆蓋位於專案目錄中的預設.env
檔案。透過更新 Compose 架構修復了缺少服務屬性
storage_opt
的問題。修復了構建
extra_hosts
列表格式。刪除了
exec
上的附加錯誤訊息。
雜項
- 將
compose.yml
和compose.yaml
新增到預設檔名列表。
1.28.5
(2021-02-26)
錯誤
修復了在 shelling out 到 SSH 客戶端時出現的 OpenSSL 版本不匹配錯誤(透過將 docker-py 提升到包含修復的 4.4.4)。
為原生構建器添加了缺少的構建標誌:
platform
、isolation
和extra_hosts
。刪除了原生構建上的資訊訊息。
修復了當服務日誌驅動程式設定為“none”時日誌獲取錯誤。
1.28.4
(2021-02-18)
錯誤修復
- 透過將 docker-py 提升到 4.4.3 修復了 SSH 埠解析。
雜項
- 將 Python 提升到 3.7.10。
1.28.3
(2021-02-17)
錯誤修復
修復了 SSH 主機名解析,當它包含前導 's'/'h' 時,並刪除了隱藏錯誤的 quiet 選項(透過將 docker-py 提升到 4.4.2)。
修復了
--no-log-prefix
選項的鍵錯誤。修復了服務配置檔案的 CLI 環境變數名稱不正確:
COMPOSE_PROFILES
而不是COMPOSE_PROFILE
。修復了 fish 補全。
雜項
將 cryptography 提升到 3.3.2。
刪除了日誌驅動程式過濾器。
有關此版本中修復的 PR 和問題列表,請參閱 Compose 1.28.3。
1.28.2
(2021-01-26)
錯誤修復
恢復到 Python 3.7,以進行 Linux 靜態構建
為
docker-compose logs|up --no-log-prefix
新增 bash 補全
雜項
- CI 設定更新
1.28.0
(2021-01-20)
特性
添加了透過裝置請求支援 NVIDIA GPU。
添加了對服務配置檔案的支援。
將 SSH 連線方式更改為 Docker CLI,方法是 shelling out 到本地 SSH 客戶端。設定
COMPOSE_PARAMIKO_SSH=1
環境變數以啟用舊行為。添加了一個標誌以停用日誌字首。
添加了一個標誌以控制 ANSI 輸出。
Docker Compose 現在在構建映象時使用原生 Docker CLI 的
build
命令。設定COMPOSE_DOCKER_CLI_BUILD=0
環境變數以停用此功能。
錯誤修復
預設情況下將
parallel_pull=True
。恢復了非 Swarm 模式下配置的警告。
在定義
project_dir
時考慮了--file
。修復了
compose up
上的服務附加錯誤。
雜項
添加了使用情況指標。
將架構與 COMPOSE 規範同步。
改進了缺少強制環境變數的失敗報告。
將
attrs
提升到 20.3.0。將
more_itertools
提升到 8.6.0。將
cryptography
提升到 3.2.1。將
cffi
提升到 1.14.4。將
virtualenv
提升到 20.2.2。將
bcrypt
提升到 3.2.0。將 GitPython 提升到 3.1.11。
將
docker-py
提升到 4.4.1。將 Python 提升到 3.9。
Linux:將 Debian 基礎映象從 stretch 提升到 buster(Python 3.9 所需)。
macOS:將 OpenSSL 1.1.1g 提升到 1.1.1h,並將 Python 3.7.7 提升到 3.9.0。
將 PyInstaller 提升到 4.1。
放寬了對基礎映象的限制,只允許最新的次要版本。
更新了 README。
1.27.4
(2020-09-24)
錯誤修復
刪除了繫結掛載的路徑檢查。
修復了埠渲染,以輸出非 v1 的長格式語法。
將協議新增到 Docker socket 地址。
1.27.3
(2020-09-16)
錯誤修復
在
docker-compose config
上合併了max_replicas_per_node
。修復了
docker-compose config
上的depends_on
序列化。修復了
docker-compose up
上某些容器未執行時縮放的問題。為
local
驅動程式啟用了driver_opts.device
的相對路徑。允許
cpus
欄位為字串。
1.27.2
(2020-09-10)
錯誤修復
- 修復了
docker-compose run
容器附加上的錯誤。
1.27.1
(2020-09-10)
錯誤修復
修復了指定
service.scale
時的docker-compose run
。允許外部網路的
driver
屬性作為 Swarm 網路傳播問題的臨時解決方案。將新的內部架構版本固定為預設的
3.9
。保留了 Compose 檔案中配置的版本號。
1.27.0
(2020-09-07)
特性
合併了 2.x 和 3.x Compose 格式並與
COMPOSE_SPEC
架構對齊。實現了
ipc
的服務模式。在容器模式下傳遞了
COMPOSE_PROJECT_NAME
環境變數。使
run
的行為方式與up
相同。在設定
COMPOSE_DOCKER_CLI_BUILD
環境變數時,在docker-compose run
上使用docker build
。對引擎查詢使用 docker-py 預設 API 版本(
auto
)。在構建時解析
network_mode
。
錯誤修復
在不需要構建時忽略構建上下文路徑驗證。
透過將 docker-py 提升到 4.3.1 修復了浮點數到位元組的轉換。
修復了設定 deploy 部分時的 scale 錯誤。
修復了
setup.py
中的docker-py
提升。修復了實驗性構建失敗檢測。
修復了上下文傳播到 Docker CLI。
雜項
將
docker-py
提升到 4.3.1。將
tox
提升到 3.19.0。將
virtualenv
提升到 20.0.30。添加了文件同步指令碼。
1.26.2
(2020-07-02)
錯誤修復
- 在使用 pip 安裝時強制
docker-py
4.2.2 為最低版本。
1.26.1
(2020-06-30)
特性
- 將
docker-py
從 4.2.1 提升到 4.2.2。
錯誤修復
在使用 pip 安裝時強制
docker-py
4.2.1 為最低版本。修復了非 docker 端點的上下文載入。
1.26.0
(2020-06-03)
特性
添加了
docker context
支援。向
setup.py
添加了缺少的測試依賴項ddt
。為命令
up
添加了--attach-dependencies
以附加到依賴項。允許使用
COMPOSE_COMPATIBILITY
環境變數進行相容性選項。將
Pytest
提升到 5.3.4 並新增與新版本的重構相容性。將
OpenSSL
從 1.1.1f 提升到 1.1.1g。將
certifi
從 2019.11.28 提升到 2020.4.5.1。將
docker-py
從 4.2.0 提升到 4.2.1。
錯誤修復
正確轉義來自
env_files
的值。將 compose-schemas 與上游 (docker/cli) 同步。
刪除了 exec 命令上的
None
條目。添加了
distribution
包以獲取分發資訊。添加了
python-dotenv
以委託.env
檔案處理。當透過管道輸出到另一個命令時,停止調整終端寬度上的輸出。
當
version
屬性格式錯誤時顯示錯誤訊息。當
DOCKER_HOST
是遠端時修復 HTTPS 連線。
1.25.5
(2020-04-10)
特性
將 OpenSSL 從 1.1.1d 提升到 1.1.1f。
添加了 Compose 版本 3.8。
- 將服務規模限制為
deploy.placement.max_replicas_per_node
欄位指定的大小。
- 將服務規模限制為
1.25.4
(2020-02-03)
錯誤修復
修復了 CI 指令碼以強制 MacOS 的最小版本為 10.11。
修復了 docker-compose exec 在環境檔案中沒有值的鍵。
1.25.3
(2020-01-23)
錯誤修復
修復了 CI 指令碼以強制使用 Python3 進行編譯。
更新了釋出頁面上的二進位制檔案的 sha256。
1.25.2
(2020-01-20)
新功能
- Docker Compose 現在允許使用
COMPOSE_COMPATIBILITY
環境變數進行相容性選項。
錯誤修復
修復了當
version
欄位設定為無效值時導致 Docker Compose 崩潰的問題。當在 version 欄位中使用無效值時,Docker Compose 現在顯示錯誤訊息。修復了當在終端外部執行命令時導致 Docker Compose 訊息渲染不正確的問題。
1.25.1
(2020-01-06)
錯誤修復
在使用
APIError
解釋建立和啟動容器之前將其解碼為 Unicode。Docker Compose 丟棄值為空的
com.docker.compose.filepaths
標籤。這通常發生在標籤源自 stdin 時。新增 OS X 二進位制檔案作為目錄,以解決 macOS Catalina 二進位制檔案掃描導致啟動時間過慢的問題。
在容器模式下使用
script/run/run.sh
執行時傳遞了HOME
環境變數。Docker Compose 現在會報告無法拉取但需要構建的映象。
1.25.0
(2019-11-18)
新功能
透過將
CLICOLOR
環境變數更改為0
來將 no-colors 設定為 true。將工作目錄、配置檔案和 env 檔案新增到服務標籤。
添加了 ARM 構建依賴項。
添加了 BuildKit 支援(使用
DOCKER_BUILDKIT=1
和COMPOSE_DOCKER_CLI_BUILD=1
)。將 Paramiko 提升到 2.6.0 版本。
添加了以下標籤:
docker-compose:latest
、docker-compose:<version>-alpine
和docker-compose:<version>-debian
。將
docker-py
提升到 4.1.0 版本。增強了對
requests
的支援,最高可達 2.22.0 版本。刪除了
build:cache_from
上的空標籤。Dockerfile
增強功能,提供用於生成 Alpine Linux 的libmusl
二進位制檔案。僅拉取無法構建的映象。
scale
屬性現在接受0
作為值。向
docker-compose build
命令添加了--quiet
選項和--no-rm
選項。向
docker-compose config
命令添加了--no-interpolate
選項。將 MacOS 構建的 OpenSSL 從
1.1.0
提升到1.1.1c
。添加了對
docker-compose.yml
檔案的credential_spec
配置選項的支援。無需拉取映象即可解析摘要。
將
pyyaml
升級到4.2b1
版本。對於
down
嘗試刪除不存在的映象的情況,嚴重性降低為warning
。在可能的情況下,強制使用改進的 API 欄位進行專案事件。
更新了
setup.py
以適應現代pypi/setuptools
,並刪除了pandoc
依賴項。刪除了不再需要的
Dockerfile.armhf
。
錯誤修復
使容器服務顏色具有確定性,包括刪除紅色。
修復了非 ASCII 字元錯誤(僅限 Python 2)。
將映象大小調整為十進位制格式,以與 Docker CLI 對齊。
透過 Python POSIX 支援獲取
tty
大小。修復了相同檔案
extends
最佳化。修復了
stdin_open
。修復了在使用
up --no-start
選項時忽略--remove-orphans
的問題。修復了
docker-compose ps --all
命令。修復了
depends_on
依賴項重新建立行為。修復了
docker-compose build --memory
命令的 bash 補全。修復了執行
docker-compose exec
命令時出現的誤導性環境變數警告。修復了
parallel_execute_watch function
中的失敗檢查。修復了拉取映象後出現的競態條件。
修復了重複掛載點上的錯誤(現在顯示配置錯誤訊息)。
修復了
networks
部分的合併。Compose 容器預設始終連線到
stdin
。修復了當容器不可用時
docker-compose start
命令上失敗服務的顯示。
1.24.1
(2019-06-24)
此版本包含次要改進和錯誤修復。
1.24.0
(2019-03-28)
特性
添加了對使用
ssh
協議連線到 Docker Engine 的支援。向
docker-compose ps
添加了--all
標誌,以在命令輸出中包含已停止的一次性容器。為
ps --all|-a
添加了 bash 補全。添加了對 credential_spec 的支援。
向
bash
和zsh
補全中的docker build
選項添加了--parallel
。
錯誤修復
修復了一個錯誤,即 Compose 在嘗試從私有登錄檔拉取映象時未能正確處理某些有效的憑據助手。
修復了一個問題,即
docker-compose start
在容器建立之前輸出具有誤導性。Compose 將不再接受從環境檔案獲取的變數名中的空格。這與 Docker CLI 行為匹配。
如果服務嘗試在 volumes 部分宣告重複的掛載點,Compose 現在將報告配置錯誤。
修復了 Compose 的容器化版本中導致使用者在由
run
或exec
啟動的互動式會話期間無法寫入 stdin 的問題。由
run
啟動的一次性容器不再採用服務的重啟策略,而是設定為永不重啟。修復了一個問題,即某些容器事件不會出現在
docker-compose events
命令的輸出中。缺少映象將不再停止
docker-compose down
命令的執行。現在顯示警告。強制 macOS CI 的
virtualenv
版本。修復了網路具有
None
配置時 Compose 檔案的合併。透過在
pyinstaller
中啟用bootloader_ignore_signals
修復了CTRL+C
問題。將
docker-py
版本提升到3.7.2
,以修復 SSH 和代理配置問題。修復了釋出指令碼和釋出文件中的一些錯別字。
1.23.2
(2018-11-28)
錯誤修復
恢復了 1.23.0 中將隨機字串附加到
docker-compose up
建立的容器名稱的更改,導致定址問題。注意由
docker-compose run
建立的容器將繼續使用隨機生成的名稱,以避免並行執行期間的衝突。修復了一個問題,即某些
dockerfile
路徑在 Windows 上嘗試構建時會意外失敗。修復了一個錯誤,即構建上下文 URL 在 Windows 上無法構建。
修復了一個錯誤,即
run
和exec
命令對--host
引數的某些可接受值會失敗。修復了一個問題,即服務定義中
storage_opt
和isolation
鍵的覆蓋未正確應用。修復了一個錯誤,即某些無效的 Compose 檔案在驗證期間會引發未捕獲的異常。
1.23.1
(2018-11-01)
錯誤修復
修復了一個錯誤,即使用早於
1.23.0
版本的 Compose 建立的容器時會導致意外崩潰。修復了一個問題,即
--project-directory
標誌的行為會因所使用的子命令而異。
1.23.0
(2018-10-30)
重要提示
此版本中 Compose 建立的容器的預設命名方案已從 <project>_<service>_<index>
更改為 <project>_<service>_<index>_<slug>
,其中 <slug>
是隨機生成的十六進位制字串。請確保在升級之前相應地更新依賴於舊命名方案的指令碼。
特性
崩潰後重新啟動的容器的日誌現在將出現在
up
和logs
命令的輸出中。向
docker-compose config
命令添加了--hash
選項,允許使用者列印每個服務配置的雜湊字串,以方便滾動更新。向
docker-compose build
命令添加了--parallel
標誌,允許 Compose 同時構建多達 5 個映象。即使在並行拉取多個映象時,
pull
命令的輸出也會報告狀態/進度。對於具有多個名稱的映象,Compose 現在將嘗試匹配
images
命令輸出中服務配置中存在的名稱。
錯誤修復
修復了一個問題,即同一服務的並行
run
命令會因名稱衝突而失敗。修復了一個問題,即 Windows 客戶端上長度超過 260 個字元的路徑會導致
docker-compose build
失敗。修復了一個錯誤,即嘗試將
/var/run/docker.sock
掛載到適用於 Windows 的 Docker Desktop 會導致失敗。Compose 現在使用
--project-directory
選項來確定在哪裡查詢.env
檔案。docker-compose build
在嘗試使用 gcloud 憑據助手提供的憑據拉取映象時不再失敗。修復了
docker-compose up
中的--exit-code-from
選項,使其即使在監視的容器不是退出原因時也始終報告實際退出程式碼。修復了一個問題,該問題在某些情況下會阻止重新建立服務,即卷被對映到與 Dockerfile 中為該映象宣告的卷相同的掛載點。
修復了一個錯誤,該錯誤導致具有多個網路的雜湊配置不一致,導致某些服務不必要地重新啟動。
修復了一個錯誤,該錯誤會導致名稱包含一個或多個點字元的服務變數替換失敗。
修復了使用 Compose 的容器化版本時管道處理問題。
修復了一個錯誤,該錯誤導致 Compose 檔案中
external: false
的條目在docker-compose config
的輸出中列印為external: true
。修復了一個錯誤,該錯誤導致在沒有定義 image 鍵的服務上發出
docker-compose pull
命令時 Compose 崩潰。卷和繫結現在按照它們在服務定義中宣告的順序掛載。
雜項
zsh
補全指令碼已更新,添加了新選項,並且不再建議服務名稱預期位置的容器名稱。
1.22.0
(2018-07-17)
新功能
Compose 格式版本 3.7
引入了
docker-compose.yml
規範的 3.7 版本。此版本需要 Docker Engine 18.06.0 或更高版本。添加了對部署配置中
rollback_config
的支援添加了對服務配置中
init
引數的支援添加了對服務、網路、卷、秘鑰和配置配置中擴充套件欄位的支援
Compose 格式版本 2.4
- 添加了對服務、網路和卷配置中擴充套件欄位的支援
錯誤修復
修復了一個錯誤,該錯誤在設定
DOCKER_DEFAULT_PLATFORM
時阻止了某些 Compose 檔案的部署Compose 將不再嘗試建立以無效字元開頭的容器或卷
修復了幾個錯誤,這些錯誤阻止了 Compose 命令與使用舊版 Compose 建立的容器正常工作
修復了當原始檔包含可附加網路時,
docker-compose config
與--compatibility-mode
標誌一起使用時的輸出問題修復了一個錯誤,該錯誤導致
gcloud
憑據儲存在 UNIX 上與 Compose 二進位制檔案一起使用時無法正常工作修復了一個錯誤,該錯誤導致在 Windows 上嘗試透過非 HTTPS TCP 連線操作時出現連線錯誤
修復了一個錯誤,該錯誤導致在 Windows 上 Dockerfile 位於構建上下文的子目錄中時構建失敗
修復了一個問題,該問題阻止了 Windows 上 UTF-8 BOM 編碼的 Compose 檔案的正確解析
修復了使用
docker-compose build
時.dockerignore
檔案中雙萬用字元 (**
) 模式的處理問題修復了一個錯誤,該錯誤導致舊版
.dockercfg
檔案中的 auth 值被忽略docker-compose build
將不再嘗試建立以無效字元開頭的映象名稱
1.21.2
(2018-05-03)
錯誤修復
- 修復了一個錯誤,該錯誤阻止了 IPAM 配置中的 ip_range 屬性透過驗證
1.21.1
(2018-04-27)
錯誤修復
在 1.21.0 中,我們引入了對專案名稱進行清理以在資源名稱中內部使用的方式的更改。這導致在操作現有已部署應用程式時出現問題,因為其名稱已更改。此版本正確檢測使用“舊版”命名約定的資源。
修復了一個問題,即使用絕對路徑指定上下文內的 Dockerfile 會失敗,儘管它是有效的。
修復了一個錯誤,該錯誤錯誤地檢測到 IPAM 選項更改,從而阻止了重新部署。
v2 檔案的驗證現在正確檢查 IPAM 配置的結構。
改進了對 Windows 上憑據儲存的支援,包括使用
.exe
以外的副檔名的二進位制檔案。有效副檔名列表由PATHEXT
環境變數的內容決定。修復了一個錯誤,該錯誤導致 Compose 生成包含重複元素的無效繫結,並附帶一些 v3.2 檔案,從而在部署期間在 Engine 級別觸發錯誤。
1.21.0
(2018-04-11)
新功能
Compose 檔案版本 2.4
引入了
docker-compose.yml
規範的 2.4 版本。此版本需要 Docker Engine 17.12.0 或更高版本。添加了對服務定義中
platform
引數的支援。如果提供,該引數也用於執行服務的構建。
Compose 檔案版本 2.2 及更高版本
- 添加了對服務定義中
cpu_rt_period
和cpu_rt_runtime
引數的支援(僅限 2.x)。
Compose 檔案版本 2.1 及更高版本
添加了對服務定義中
cpu_period
引數的支援(僅限 2.x)。添加了對服務構建配置中
isolation
引數的支援。此外,如果未定義build.isolation
引數,服務定義中的isolation
引數也用於構建。(僅限 2.x)
所有格式
向
docker-compose exec
添加了對--workdir
標誌的支援。向
docker-compose build
添加了對--compress
標誌的支援。docker-compose pull
現在預設並行執行。您可以使用--no-parallel
標誌選擇退出。--parallel
標誌現在已棄用,並將在未來版本中刪除。專案名稱中的破折號和下劃線不再被刪除。
docker-compose build
現在支援從構建上下文外部使用 Dockerfile。
錯誤修復
Compose 現在檢查卷的配置是否與遠端卷匹配,如果檢測到不匹配,則會報錯。
修復了一個錯誤,該錯誤導致 Compose 在嘗試並行建立多個一次性容器時引發意外錯誤。
修復了在使用
docker-machine config
為exec
和run
命令生成 TLS 標誌時引數解析錯誤的問題。修復了一個錯誤,即空預設值(例如
${VAR:-}
)的變數替換會列印不正確的警告。改進了當 Compose 檔案的編碼與系統不匹配時的彈性。建議使用者儘可能使用 UTF-8。
修復了一個錯誤,該錯誤導致 Swarm 中的外部 overlay 網路被 Compose 錯誤地識別為不存在,從而中斷了其他有效的操作。
1.20.0
(2018-03-20)
新功能
Compose 檔案版本 3.6
引入了
docker-compose.yml
規範的 3.6 版本。此版本必須與 Docker Engine 18.02.0 或更高版本一起使用。添加了對卷對映中
tmpfs.size
屬性的支援
Compose 檔案版本 3.2 及更高版本
--build-arg
選項現在可以在docker-compose build
中不指定服務而使用
Compose 檔案版本 2.3
添加了對服務定義中
device_cgroup_rules
的支援添加了對長格式卷對映中
tmpfs.size
屬性的支援--build-arg
選項現在可以在docker-compose build
中不指定服務而使用
所有格式
向頂級
docker-compose
命令添加了--log-level
選項。接受的值為debug
、info
、warning
、error
、critical
。預設日誌級別為info
docker-compose run
現在允許使用者取消設定容器的入口點在
~/.docker/config.json
檔案中找到的代理配置現在會為 Compose 建立的容器填充環境變數和構建引數向
docker-compose run
添加了--use-aliases
標誌,指示應將服務配置中宣告的網路別名用於正在執行的容器向
docker-compose pull
添加了--include-deps
標誌docker-compose run
現在在收到SIGHUP
後會殺死並移除正在執行的容器docker-compose ps
現在顯示容器的健康狀態(如果可用)向
exec
、run
和up
命令添加了長格式--detach
選項
錯誤修復
修復了
.dockerignore
處理,特別是關於絕對路徑和最後一行優先順序規則修復了一個問題,即 Compose 在使用 Docker For Mac 連線到 Engine 時會進行代價高昂的 DNS 查詢
修復了 1.19.0 中引入的一個錯誤,該錯誤導致 Compose 不會遵守預設證書路徑
修復了一個錯誤,即 Compose 會錯誤地檢查符號連結的目標是否可訪問(當作為構建上下文的一部分時)
修復了一個錯誤,即包含空白行的
.dockerignore
檔案會導致 Compose 在 Windows 上報錯修復了一個錯誤,即
--tls*
和--host
選項在互動式run
和exec
命令中無法正確遵守security_opt
配置中的seccomp:<filepath>
條目現在正確地將檔案內容傳送到引擎up
和down
操作的 ANSI 輸出不應再影響錯誤的行改進了對非 Unicode 區域設定的支援
修復了在 Windows 上,當用戶主目錄名稱包含非 ASCII 字元時發生的崩潰
修復了在構建過程中,由於構建上下文中的檔案具有負
mtime
值而導致的錯誤修復了流式傳輸構建進度時的編碼錯誤
1.19.0
(2018-02-07)
破壞性變更
- 在 UNIX 平臺上,互動式
run
和exec
命令現在預設要求在客戶端安裝docker
CLI。要恢復到以前的行為,使用者可以設定COMPOSE_INTERACTIVE_NO_CLI
環境變數。
新功能
Compose 檔案版本 3.x
config
命令的輸出現在應該以更準確的方式合併多個 Compose 檔案中的deploy
選項
Compose 檔案版本 2.3
- 新增對服務定義中
runtime
選項的支援
Compose 檔案版本 2.1 及更高版本
- 新增對
${VAR:?err}
和${VAR?err}
變數插值語法的支援,以指示強制變數
Compose 檔案版本 2.x
- 在服務網路對映中新增
priority
鍵,允許使用者定義指定服務連線到每個網路的順序
所有格式
新增
--renew-anon-volumes
(簡寫-V
)到up
命令,防止 Compose 從以前的容器中恢復匿名卷的卷資料新增同時並行操作的數量限制,這應該可以防止意外耗盡伺服器資源。預設值為 64,可以透過
COMPOSE_PARALLEL_LIMIT
環境變數進行配置新增
--always-recreate-deps
標誌到up
命令,以強制重新建立依賴服務以及依賴所有者新增
COMPOSE_IGNORE_ORPHANS
環境變數,以放棄孤立容器檢測並抑制警告新增
COMPOSE_FORCE_WINDOWS_HOST
環境變數,以強制 Compose 解析卷定義,就像 Docker 主機是 Windows 系統一樣,即使 Compose 本身當前在 UNIX 上執行Bash 補全現在應該能夠更好地區分正在執行、已停止和已暫停的服務
錯誤修復
修復了當構建上下文包含不可讀檔案或 FIFO 物件時,
build
命令會報告連線錯誤的錯誤。這些檔案型別現在將得到適當處理修復了圍繞互動式
run
/exec
會話的各種問題。修復了同時使用環境變數和 CLI 標誌設定 TLS 選項時,部分配置會被忽略的錯誤
修復了 Compose 忽略 DOCKER_TLS_VERIFY 環境變數的錯誤
修復了
up
命令中的-d
和--timeout
標誌被錯誤地標記為不相容的錯誤修復瞭如果與上一個容器關聯的映象已被刪除,服務的重新建立會中斷的錯誤
修復了更新掛載的目標會在 Compose 嘗試重新建立關聯服務時導致中斷的錯誤
修復了在使用 3.2 版的 Compose 檔案中,使用擴充套件語法宣告的
tmpfs
卷會被錯誤地建立為匿名卷的錯誤修復了型別轉換錯誤會列印堆疊跟蹤而不是優雅退出的錯誤
修復了一些與 Unicode 處理相關的錯誤
如果其配置未更改,依賴服務不再與依賴所有者一起重新建立
新增對 Compose 檔案中
labels
欄位的更好驗證。包含標量型別(數字、布林值)的標籤值現在會自動轉換為字串
1.18.0
(2017-12-18)
新功能
Compose 檔案版本 3.5
引入
docker-compose.yml
規範的 3.5 版本。此版本需要 Docker Engine 17.06.0 或更高版本新增對構建配置中
shm_size
引數的支援新增對服務定義中
isolation
引數的支援新增對網路、金鑰和配置定義自定義名稱的支援
Compose 檔案版本 2.3
Compose 檔案版本 2.1 及更高版本
新增對服務定義中
oom_kill_disable
引數的支援(僅限 2.x)新增對網路定義自定義名稱的支援(僅限 2.x)
所有格式
從環境中插值的值現在在非字串欄位中使用時將轉換為適當的型別。
新增對
docker-compose run
中--label
的支援新增對
docker-compose down
中--timeout
的支援新增對
docker-compose build
中--memory
的支援在服務定義中設定
stop_grace_period
現在還會設定容器的stop_timeout
錯誤修復
修復了 Compose 仍根據舊版引擎行為處理服務主機名的問題,導致包含點的服務主機名被截斷
修復了 Compose 認為埠的
X-Y:Z
語法無效的錯誤修復了 CLI 日誌記錄導致重複訊息和不優雅輸出的問題
修復了在使用多個 Compose 檔案時
stop_grace_period
被忽略的錯誤修復了在使用未標記映象時
docker-compose images
會崩潰的錯誤修復了有效的
${VAR:-}
語法會導致 Compose 出錯的錯誤修復了使用 UTF-8 BOM 的
env_file
條目讀取不正確的錯誤修復了缺失的 secret 檔案會在其位置生成一個空目錄的錯誤
修復了 CLI 錯誤處理程式中的字元編碼問題
新增對健康檢查中
test
欄位的驗證新增對 IPAM 配置中
subnet
欄位的驗證新增對服務定義中使用長語法時的
volumes
屬性的驗證CLI 現在明確禁止在
docker-compose up
中同時使用-d
和--timeout
1.17.0
(2017-11-01)
新功能
Compose 檔案版本 3.4
引入
docker-compose.yml
規範的 3.4 版本。此版本需要與 Docker Engine 17.06.0 或更高版本一起使用。新增對構建配置中
cache_from
、network
和target
選項的支援新增對
update_config
部分中order
引數的支援新增對使用
name
引數在卷定義中設定自定義名稱的支援
Compose 檔案版本 2.3
- 新增對構建配置中
shm_size
選項的支援
Compose 檔案版本 2.x
- 新增對擴充套件欄位 (
x-*
) 的支援。也適用於 v3.4 檔案
所有格式
- 新增
--no-start
到up
命令,允許使用者在不啟動服務的情況下建立所有資源(網路、卷、容器)。create
命令已棄用,取而代之的是此新選項
錯誤修復
修復了
extra_hosts
值會被擴充套件檔案覆蓋而不是合併的錯誤修復了 v3.2 檔案的驗證會阻止在服務卷定義中使用
consistency
欄位的錯誤修復了當期望唯一項的配置欄位包含重複項時會導致崩潰的錯誤
修復了具有不同模式的掛載覆蓋會建立重複條目而不是覆蓋原始條目的錯誤
修復了宣告為列表的構建標籤無法正確解析的錯誤
修復瞭如果檔案包含自定義名稱的外部卷,
docker-compose config
的輸出對於某些版本會無效的錯誤改進了在 Windows 上使用不支援的檔案版本發出構建命令時的錯誤處理
修復了併發執行
up
命令時有時會建立同名網路的問題。
1.16.0
(2017-08-31)
新功能
Compose 檔案版本 2.3
引入
docker-compose.yml
規範的 2.3 版本。此版本需要與 Docker Engine 17.06.0 或更高版本一起使用。新增對構建配置中
target
引數的支援新增對健康檢查配置中
start_period
引數的支援
Compose 檔案版本 2.x
新增對服務定義中
blkio_config
引數的支援新增對使用
name
引數在卷定義中設定自定義名稱的支援(不適用於版本 2.0)
所有格式
- 新增 CLI 標誌
--no-ansi
以抑制輸出中的 ANSI 控制字元
錯誤修復
修復了巢狀的
extends
指令未正確解析,導致“檔案未找到”錯誤的錯誤修復了
.dockerignore
解析的幾個問題修復了啟用 TTY 的服務的日誌列印不正確並導致
MemoryError
異常的問題修復了在 Python 3 上列印應用程式日誌時有時會被
UnicodeEncodeError
異常中斷的錯誤docker-compose config
輸出中的$
字元現在已正確轉義修復了執行
docker-compose top
有時會因未捕獲的異常而失敗的錯誤修復了
docker-compose pull
使用--parallel
標誌在失敗時會返回0
退出程式碼的錯誤修復了
deploy.resources
中的鍵未經驗證的問題修復了
docker-compose config
輸出中的logging
選項會被設定為null
(一個無效值)的問題修復了
docker-compose images
命令在映象來自使用顯式埠號的私有倉庫時的輸出問題修復了埠定義使用
0
作為釋出埠值時docker-compose config
的輸出問題
1.15.0
(2017-07-26)
新功能
Compose 檔案版本 2.2
- 新增對構建配置中
network
引數的支援。
Compose 檔案版本 2.1 及更高版本
服務定義中的
pid
選項現在支援service:<name>
值。新增對服務定義中
storage_opt
引數的支援。此選項不適用於 v3 格式
所有格式
新增
--quiet
標誌到docker-compose pull
,抑制進度輸出CLI 輸出的一些改進
錯誤修復
透過
docker-compose run
的--volume
標誌指定的卷現在補充了服務定義中宣告的卷,而不是替換它們修復了使用多個 Compose 檔案會取消 Compose 檔案中定義的比例值的錯誤。
修復了 Compose 不遵循
config.json
檔案中的credHelpers
條目的問題修復了在 Python 3 環境中使用多個 Compose 檔案和埠宣告會導致失敗的錯誤
修復了使用者環境中存在一些與代理相關的選項會阻止 Compose 執行的錯誤
修復瞭如果原始檔案使用
Y
或N
值,docker-compose config
的輸出會無效的問題修復了在 Windows Engine 上阻止對先前建立的堆疊執行
up
操作的問題。
1.14.0
(2017-06-19)
新功能
Compose 檔案版本 3.3
- 引入
docker-compose.yml
規範的 3.3 版本。此版本需要與 Docker Engine 17.06.0 或更高版本一起使用。注意:credential_spec
和configs
鍵僅適用於 Swarm 服務,並且會被 Compose 忽略
Compose 檔案版本 2.2
- 新增服務定義中的以下引數:
cpu_count
、cpu_percent
、cpus
Compose 檔案版本 2.1
- 新增對構建標籤的支援。此功能也適用於 2.2 和 3.3 格式。
所有格式
新增
docker-compose exec
中--user
標誌的簡寫-u
Compose 檔案和遠端網路之間標籤的差異現在將列印警告,而不是阻止重新部署。
錯誤修復
修復了執行
docker-compose run
命令時,服務依賴項會重新縮放到其預設比例的錯誤修復了
docker-compose rm
帶有--stop
標誌在提供要刪除的服務列表時行為不正常的錯誤修復了在 build 部分中,當使用多個 Compose 檔案時
cache_from
會被忽略的錯誤。修復了在使用多個 Compose 檔案時阻止將同一埠繫結到不同 IP 的錯誤。
修復瞭如果覆蓋檔案具有
.yaml
副檔名,Compose 不會選擇它們的錯誤修復了 Windows Engine 上網路被錯誤地標記為需要重新建立的錯誤
修復了宣告埠的服務會在某些版本的 Python 3 上導致崩潰的錯誤
修復了
docker-compose config
的輸出有時會包含無效埠定義的錯誤
1.13.0
(2017-05-02)
破壞性變更
docker-compose up
現在將服務的縮放重置為其預設值。您可以使用新引入的--scale
選項指定自定義縮放值
新功能
Compose 檔案版本 2.2
引入
docker-compose.yml
規範的 2.2 版本。此版本需要與 Docker Engine 1.13.0 或更高版本一起使用新增對服務定義中
init
的支援。新增對服務定義中
scale
的支援。可以使用docker-compose up
中的--scale
標誌覆蓋配置值。此檔案格式停用了scale
命令
Compose 檔案版本 2.x
- 新增對網路定義
ipam
部分中options
的支援
錯誤修復
修復了透過
-f
選項提供給 Compose 的路徑未正確解析的錯誤修復了埠部分中的
ext_ip::target_port
表示法被錯誤地標記為無效的錯誤修復了在使用
-d
標誌時exec
命令有時不會將控制權返回給終端的問題修復了 v3.2 檔案的
config
命令輸出中缺少 secret 的錯誤修復瞭如果無法連線網際網路,
docker-compose
會掛起的問題修復了透過
-f
標誌傳遞包含 Unicode 字元的路徑會導致 Compose 崩潰的問題修復瞭如果 Compose 檔案包含外部 secret,
docker-compose config
的輸出會無效的問題修復瞭如果 Compose 安裝在 Python 3 環境中,將
--exit-code-from
與up
一起使用會失敗的錯誤修復了使用
tmpfs
和volumes
組合重新建立容器會導致無效配置狀態的錯誤
1.12.0
(2017-04-04)
新功能
Compose 檔案版本 3.2
引入
docker-compose.yml
規範的 3.2 版本新增對服務構建部分中
cache_from
的支援新增對服務定義中新的擴充套件埠語法的支援
新增對服務定義中新的擴展卷語法的支援
Compose 檔案版本 2.1
- 新增對服務定義中
pids_limit
的支援
Compose 檔案版本 2.0 及更高版本
新增
--volumes
選項到docker-compose config
,用於列出為該專案宣告的命名卷新增對服務定義中
mem_reservation
的支援(僅限 2.x)新增對服務定義中
dns_opt
的支援(僅限 2.x)
所有格式
新增
docker-compose images
命令,用於列出當前專案容器使用的映象新增
--stop
(簡寫-s
)選項到docker-compose rm
,用於在刪除正在執行的容器之前停止它們新增
--resolve-image-digests
選項到docker-compose config
,用於將每個服務的映象版本固定到永久摘要新增
--exit-code-from SERVICE
選項到docker-compose up
。使用時,docker-compose
將在任何容器退出時退出,退出程式碼與指定服務的退出程式碼相對應新增
--parallel
選項到docker-compose pull
,啟用同時拉取多個服務的映象新增
--build-arg
選項到docker-compose build
新增
--volume <volume_mapping>
(簡寫-v
)選項到docker-compose run
,用於宣告要掛載的執行時卷新增
--project-directory PATH
選項到docker-compose
,這將影響專案的路徑解析當在
docker-compose up
中使用--abort-on-container-exit
時,導致中止的容器的退出程式碼將是docker-compose up
命令的退出程式碼使用者現在可以使用
COMPOSE_PATH_SEPARATOR
環境變數配置他們想要用於分隔COMPOSE_FILE
環境變數值的路徑分隔符新增對埠對映中埠範圍到單個埠的支援,例如
8000-8010:80
。
錯誤修復
docker-compose run --rm
現在在執行後刪除匿名卷,與docker run --rm
的行為一致。修復了包含埠列表的覆蓋檔案會導致引發 TypeError 的錯誤
修復了
docker-compose config
輸出中缺少deploy
鍵的錯誤修復了向上或向下擴充套件服務有時會重新使用過時容器的錯誤
修復瞭如果專案聲明瞭匿名卷,
docker-compose config
的輸出會無效的錯誤變數插值現在在 Compose 檔案的
secrets
部分中正確發生secrets
部分現在在docker-compose config
的輸出中正確顯示修復了對某些網路屬性的更改不會針對先前建立的網路進行檢測的錯誤
修復了嘗試寫入已關閉管道時
docker-compose
會崩潰的錯誤修復了 Compose 在與命令列 TLS 標誌結合使用時不會識別 COMPOSE_TLS_VERSION 值的問題
1.11.2
(2017-02-17)
錯誤修復
修復了阻止 secret 配置正確載入的錯誤
修復瞭如果配置檔案包含 secret 定義,
docker-compose config
命令會失敗的錯誤修復了某些 Linux 發行版上的 Compose 會選擇並載入過時版本的 requests 庫的問題
修復了構建資料夾中套接字型別的檔案會導致
docker-compose
在嘗試構建該服務時崩潰的問題修復了
.dockerignore
檔案中不識別遞迴萬用字元模式**
的問題。
1.11.1
(2017-02-09)
錯誤修復
- 修復了 Compose 解析器未將 3.1 檔案格式識別為有效的錯誤
1.11.0
(2017-02-08)
新功能
Compose 檔案版本 3.1
- 引入
docker-compose.yml
規範的 3.1 版本。此版本需要 Docker Engine 1.13.0 或更高版本。它引入了對 secret 的支援。有關詳細資訊,請參閱文件
Compose 檔案版本 2.0 及更高版本
- 引入
docker-compose top
命令,用於顯示 Compose 管理的不同服務正在執行的程序。
錯誤修復
修復了擴充套件定義健康檢查字典的服務會導致
docker-compose
出錯的錯誤。修復了在使用多個 Compose 檔案時,服務定義中的
pid
條目會被忽略的問題。
1.10.1
(2017-02-01)
錯誤修復
修復了 docker-py 舊版本存在會導致執行 Compose 時意外崩潰的問題
修復了專案使用多個 compose 檔案時健康檢查依賴項會丟失的問題
修復了一些導致
config
命令輸出無效的問題修復了在 v3 Compose 檔案中添加捲標籤會導致錯誤的問題
修復了 Windows 上包含 Unicode 字元的構建上下文路徑編碼不正確的問題
修復了容器停止或重新啟動時,Compose 在流式傳輸日誌時偶爾會崩潰的錯誤
1.10.0
(2017-01-18)
新功能
Compose 檔案版本 3.0
- 引入
docker-compose.yml
規範的 3.0 版本。此版本需要與 Docker Engine 1.13 或更高版本一起使用,並且專門設計用於docker stack
命令。
Compose 檔案版本 2.1 及更高版本
健康檢查配置現在可以使用
healthcheck
引數在服務定義中完成現在,當使用
depends_on
宣告時,容器依賴項可以設定為等待透過的健康檢查。有關更新的語法,請參閱文件。注意此功能不會移植到版本 3 Compose 檔案。
新增對服務定義中
sysctls
引數的支援新增對服務定義中
userns_mode
引數的支援Compose 現在會為其建立的網路和卷新增識別標籤
Compose 檔案版本 2.0 及更高版本
- 新增對服務定義中
stop_grace_period
選項的支援。
錯誤修復
彩色輸出現在在 Windows 上正常工作。
修復了 docker-compose run 在 Windows 上以互動模式設定連結別名失敗的錯誤。
Compose 建立的網路現在始終可附加(Compose 檔案 v2.1 及更高版本)。
修復了
COMPOSE_CONVERT_WINDOWS_PATHS
的假值(0
、false
、空值)被解釋為 true 的錯誤。修復了 Windows 上某些 .dockerignore 模式中的正斜槓未正確解析的錯誤
1.9.0
(2016-11-16)
破壞性變更
- 在 Windows 上使用 Compose 與 Docker Toolbox/Machine 時,預設情況下不再將卷路徑從
C:\Users
轉換為/c/Users
樣式。要重新啟用此轉換以使您的卷繼續工作,請設定環境變數COMPOSE_CONVERT_WINDOWS_PATHS=1
。Docker for Windows 使用者不受影響,無需設定該變數。
新功能
現在 Windows 平臺支援
docker-compose run
和docker-compose exec
的互動模式。此功能需要系統上存在docker
二進位制檔案才能工作。引入
docker-compose.yml
規範的 2.1 版本。此版本需要與 Docker Engine 1.12 或更高版本一起使用。- 新增對
docker-compose.yml
中設定卷標籤和網路標籤的支援。 - 新增對服務定義中
isolation
引數的支援。 - 新增對服務網路定義中連結本地 IP 的支援。
- 新增對變數插值中 shell 樣式內聯預設值的支援。支援的形式有
${FOO-default}
(如果 FOO 未設定則回退)和${FOO:-default}
(如果 FOO 未設定或為空則回退)。
- 新增對
新增對服務定義中
group_add
和oom_score_adj
引數的支援。新增對網路定義中
internal
和enable_ipv6
引數的支援。Compose 現在在 Windows 上預設使用
npipe
協議。如果
driver
值不衝突,覆蓋logging
配置現在將正確合併options
對映。
錯誤修復
修復了 Windows 上
npipe
協議支援相關的幾個錯誤。修復了在 Windows Server 上使用 Docker 時,Windows 路徑轉換不正確的問題。
修復了空
restart
值有時會導致引發異常的錯誤。修復了包含 Unicode 字元的服務日誌有時會導致錯誤的問題。
修復了環境變數中的 Unicode 值有時在檢索時會引發 Unicode 異常的錯誤。
修復了 Compose 會錯誤地檢測覆蓋網路配置不匹配的問題。
1.8.1
(2016-09-22)
錯誤修復
修復了使用憑證儲存的使用者無法訪問其私有映象的錯誤。
修復了使用身份令牌進行身份驗證的使用者無法訪問其私有映象的錯誤。
修復了 Docker 配置檔案中的
HttpHeaders
條目會導致 Compose 在嘗試構建映象時崩潰的錯誤。修復了卷繫結宣告中 Windows 路徑處理相關的幾個錯誤。
修復了 Compose 有時在嘗試從引擎讀取流式響應時崩潰的錯誤。
修復了 Compose 在流式傳輸容器日誌時遇到 API 錯誤會導致崩潰的問題。
修復了 Compose 會錯誤地嘗試輸出引擎 API 不處理的驅動程式的日誌的問題。
修復了
docker-machine config
命令的選項未被 Compose 正確解釋的錯誤。修復了同時執行大量服務時與 Docker Engine 的連線有時會失敗的錯誤。
修復了 Compose 在執行
bundle
命令時有時會列印誤導性建議訊息的問題。修復了在專案初始化階段,Compose 未能正確處理連線錯誤的錯誤。
修復了遇到連線超時時會出現誤導性錯誤的錯誤。
1.8.0
(2016-06-14)
破壞性變更
如 1.7.0 中宣佈的,
docker-compose rm
現在預設刪除docker-compose run
建立的容器。在服務上設定
entrypoint
現在會清空映象上設定的任何預設命令(即用於構建它的 Dockerfile 中的任何CMD
指令)。這使其與docker run
的--entrypoint
標誌保持一致。
新功能
新增
docker-compose bundle
,一個構建捆綁檔案的命令,供 Docker 1.12 中的新 Docker Stack 命令使用。新增
docker-compose push
,一個將服務映象推送到登錄檔的命令。Compose 現在支援使用
COMPOSE_TLS_VERSION
環境變數為與 Docker Engine 的互動指定自定義 TLS 版本。
錯誤修復
修復了 Compose 在專案的根目錄是目錄時會錯誤地嘗試讀取
.env
的錯誤。docker-compose run -e VAR
現在將VAR
從 shell 傳遞到容器,與docker run -e VAR
類似。改進了涉及多個 Compose 檔案時多個服務子鍵的配置合併。
修復了包含 Windows 驅動器的卷對映有時解析不正確的錯誤。
修復了 Windows 環境中主機的根目錄的卷對映解析不正確的錯誤。
修復瞭如果指定了外部網路,
docker-compose config
會輸出無效 Compose 檔案的錯誤。修復了未設定的構建引數會被分配一個包含
'None'
的字串,而不是預期的空值的問題。修復了 Windows 上的是/否提示在接收輸入之前不顯示的錯誤。
修復了在 Windows 上沒有
-d
選項嘗試docker-compose exec
會以堆疊跟蹤退出的錯誤。目前這仍然會失敗,但應該會優雅地失敗。修復了
docker-compose up
期間的錯誤會在程序結束時顯示不相關的堆疊跟蹤的錯誤。docker-compose create
和docker-compose start
在出現問題時會顯示更具描述性的錯誤訊息。
1.7.1
(2016-05-04)
錯誤修復
修復了
docker-compose config
對於 v1 檔案的輸出是無效配置檔案的錯誤。修復了
docker-compose config
不會檢查連結有效性的錯誤。修復了
docker-compose help
不會按預期輸出可用命令和通用選項列表的問題。修復了在使用
docker-compose logs
時按服務過濾不適用於新建立服務的問題。修復了在使用 Python 3 的 Compose 時,未更改的服務有時會在 up 階段重新建立的錯誤。
修復了在 up 階段遇到的 API 錯誤不會被 Compose 識別為失敗狀態的問題。
修復了 Compose 會因為非 Windows 平臺上未定義的異常名稱而引發 NameError 的錯誤。
修復了有時與 Compose 一起安裝了錯誤版本的
docker-py
的錯誤。修復了
docker-machine config default
輸出的主機值未被docker-compose
命令列識別為有效選項的錯誤。修復了 Compose 在讀取 Swarm 叢集廣播的事件時有時會意外退出的問題。
更正了文件中關於
.env
檔案位置的宣告,它確實是從當前目錄讀取的,而不是與 Compose 檔案相同的位置。
1.7.0
(2016-04-13)
破壞性變更
docker-compose logs
不再預設跟蹤日誌輸出。它現在與docker logs
的行為匹配,並在列印當前日誌後退出。使用-f
獲取舊的預設行為。布林值不再允許作為 Compose 檔案中對映的值(對於
environment
、labels
和extra_hosts
鍵)。以前這是一個警告。布林值應該用引號引起來,這樣它們就變成了字串值。
新功能
Compose 現在會在其執行的目錄中查詢
.env
檔案,並讀取其中定義的任何環境變數,如果它們尚未在 shell 環境中設定。這使您可以輕鬆地為 Compose 檔案中使用的變數或任何COMPOSE_*
或DOCKER_*
變數設定預設值。新增
--remove-orphans
標誌到docker-compose up
和docker-compose down
,用於刪除從 Compose 檔案中刪除的服務的容器。新增
--all
標誌到docker-compose rm
,以包含docker-compose run
建立的容器。這將在下一個 Compose 版本中成為預設行為。新增對
docker
客戶端使用的所有相同 TLS 配置標誌的支援:--tls
、--tlscert
、--tlskey
等。Compose 檔案現在支援
tmpfs
和shm_size
選項。新增
--workdir
標誌到docker-compose run
docker-compose logs
現在顯示在其啟動後建立的新容器的日誌。COMPOSE_FILE
環境變數現在可以包含多個檔案,由主機系統的標準路徑分隔符(Mac/Linux 上為:
,Windows 上為;
)分隔。您現在可以使用
ipv4_address
和ipv6_address
選項在將服務連線到網路時指定靜態 IP 地址。新增
--follow
、--timestamp
和--tail
標誌到docker-compose logs
命令。docker-compose up
和docker-compose start
現在將在可能的情況下並行啟動容器。docker-compose stop
現在以反向依賴順序停止容器,而不是同時停止所有容器。新增
--build
標誌到docker-compose up
,以強制它構建新映象。如果未使用該標誌自動構建映象,它現在會顯示警告。新增
docker-compose exec
命令,用於在正在執行的容器中執行程序。
錯誤修復
docker-compose down
現在刪除docker-compose run
建立的容器。當使用 tty 時,如果在
up
期間達到超時,則會顯示更合適的錯誤。修復了
docker-compose down
在某些資源已被刪除時會中止的錯誤。修復了網路別名更改不會觸發服務重新建立的錯誤。
修復了當卷已存在時,列印建立新卷的日誌訊息的錯誤。
修復了中斷
up
不總是關閉容器的錯誤。修復了在 v1 Compose 檔案格式中擴充套件服務時,
log_opt
和log_driver
未正確繼承的錯誤。修復了構建引數的空值會導致檔案驗證失敗的錯誤。
1.6.2
(2016-02-23)
- 修復了連線到啟用 TLS 的 Docker Engine 會因證書驗證錯誤而失敗的錯誤。
1.6.1
(2016-02-23)
錯誤修復
修復了多次重新建立容器會導致新容器在沒有以前卷的情況下啟動的錯誤。
修復了 Compose 會將未設定環境變數的值設定為空字串,而不是沒有值的鍵的錯誤。
當 Compose 需要更新版本的 Docker API 時,提供更好的錯誤訊息。
新增缺少的配置欄位
network.aliases
,允許為服務設定網路範圍的別名。修復了
run
不會啟動depends_on
中列出的服務的錯誤。修復了在使用 extends 或多個 Compose 檔案時,
networks
和network_mode
未合併的錯誤。修復了服務別名中的錯誤,其中短容器 ID 別名只包含 10 個字元,而不是以前版本中使用的 12 個字元。
添加了建立新命名卷時缺少的日誌訊息。
修復了在使用
extends
或多個 Compose 檔案時,build.args
未合併的錯誤。修復了在 null 值或不正確的型別而不是對映時進行配置驗證的一些錯誤。
修復了沒有
context
的build
部分會顯示堆疊跟蹤而不是有用的驗證訊息的錯誤。改進了與 Swarm 的相容性,僅當服務使用匿名容器卷時才將容器親和性設定為服務容器的上一個例項。以前,親和性總是設定在所有容器上。
修復了某些
driver_opts
的驗證會導致使用數字而不是字串時出錯的錯誤。對 Compose 容器安裝選項使用的
run.sh
指令碼進行了一些改進。修復了
up --abort-on-container-exit
的錯誤,其中 Compose 會退出,但不會停止其他容器。更正了在對映中使用布林值時列印的警告訊息。
1.6.0
(2016-01-15)
主要功能
Compose 1.6 引入了
docker-compose.yml
的新格式,允許您在 Compose 檔案中定義網路和卷以及服務。它還對某些配置選項的結構進行了一些更改。您不必使用它 - 您現有的 Compose 檔案將在 Compose 1.6 上執行,就像今天一樣。
有關完整詳細資訊,請檢視升級指南。
對網路的支援已退出實驗狀態,是啟用容器之間通訊的推薦方式。
如果您使用新檔案格式,您的應用程式將使用網路。如果您尚未準備好,只需保持 Compose 檔案原樣,它將繼續正常工作。
預設情況下,您無需配置任何網路。事實上,使用 Compose 進行網路連線的配置甚至比使用連結的配置還要少。有關如何使用它,請參閱網路指南。
在 Compose 1.5 中引入的實驗性標誌
--x-networking
和--x-network-driver
已被刪除。如果您使用新檔案格式,現在可以向構建傳遞引數
build: context: . args: buildno: 1
如果您使用新檔案格式,現在可以同時指定
build
和image
鍵。docker-compose build
將構建映象並使用您指定的名稱標記它,而docker-compose pull
將嘗試拉取它。新增
events
命令,用於從應用程式監控容器事件,與docker events
非常相似。這是在 Compose 之上構建工具以在特定事件發生時執行操作(例如容器啟動和停止)的良好基礎。新增
depends_on
選項,用於指定服務之間的依賴關係。這強制啟動順序,並確保當您對具有依賴關係的服務執行docker-compose up SERVICE
時,這些依賴關係也會啟動。
新功能
新增
config
命令,它在插值變數、解析相對路徑以及合併多個檔案和extends
後驗證並列印 Compose 配置。新增
create
命令,用於建立容器而不啟動它們。新增
down
命令,用於在單個命令中停止並刪除up
建立的所有資源。新增對
cpu_quota
配置選項的支援。新增對
stop_signal
配置選項的支援。如果未修改任何容器,命令
start
、restart
、pause
和unpause
現在會以錯誤狀態碼退出。新增
--abort-on-container-exit
標誌到up
,這會導致up
在第一個容器退出後停止所有容器並退出。刪除了對
FIG_FILE
、FIG_PROJECT_NAME
的支援,並且不再將fig.yml
作為預設 Compose 檔案位置讀取。刪除了
migrate-to-labels
命令。刪除了
--allow-insecure-ssl
標誌。
錯誤修復
修復了阻止在
expose
欄位中使用埠範圍的驗證錯誤。修復了阻止在
entrypoint
欄位中使用陣列(如果它們包含重複條目)的驗證錯誤。修復了與
extends
一起使用時ulimits
被忽略的錯誤。修復了阻止在
extra_hosts
中使用 ipv6 地址的錯誤。修復了當從多個 Compose 檔案中包含
extends
時,它會被忽略的錯誤。修復了 Compose 檔案中定義容器卷時不正確的警告。
修復了阻止
up
和logs
的強制關閉行為的錯誤。修復了使用預設網路驅動程式時,
None
被列印為網路驅動程式名稱的錯誤。修復了使用
dns
或dns_search
的字串形式會導致錯誤的錯誤。修復了容器在重新啟動狀態時被報告為“已啟動”的錯誤。
修復了 DOCKER_CERT_PATH 未正確設定時令人困惑的錯誤訊息。
修復瞭如果容器使用非標準日誌驅動程式(或根本沒有),附加到容器會失敗的錯誤。
1.5.2
(2015-12-03)
修復了破壞
environment
和env_file
與extends
一起使用的錯誤,並導致沒有值的環境變數鍵具有None
值,而不是來自主機環境的值。修復了 1.5.1 中的迴歸問題,該問題導致在重新建立容器時錯誤地發出關於卷的警告。
修復了阻止構建使用
ADD <url>
的Dockerfile
的錯誤修復了
docker-compose restart
阻止其啟動已停止容器的錯誤。修復了 SIGTERM 和 SIGINT 的處理,以正確停止容器
新增對使用 url 作為
build
值 的支援改進了
expose
選項的驗證
1.5.1
(2015-11-12)
新增
--force-rm
選項到build
。新增
ulimit
選項到 Compose 檔案中的服務。修復瞭如果服務從使用
image
更改為使用build
,up
會因“服務需要構建”而報錯的錯誤。修復了在某些終端上並行操作輸出不正確的錯誤。
修復了當
volumes_from
的模式更改時,阻止容器重新建立的錯誤。修復了 1.5.0 中的迴歸問題,其中非 utf-8 Unicode 字元會導致
up
或logs
崩潰。修復了 1.5.0 中的迴歸問題,其中當命令因與 Docker 守護程序通訊的 HTTP 超時而失敗時,Compose 會使用成功退出狀態碼。
修復了 1.5.0 中的迴歸問題,其中
name
被接受為有效服務選項,會覆蓋服務的實際名稱。當使用
--x-networking
時,Compose 不再將主機名設定為容器名稱。當使用
--x-networking
時,Compose 僅在至少一個容器使用網路時才會建立預設網路。在
up
或logs
期間列印日誌時,每行後重新整理輸出緩衝區,以防止緩衝問題隱藏日誌。如果正在建立容器的依賴項,則重新建立該容器。以前,容器僅在其依賴項已存在但也被重新建立時才重新建立。
當 Compose 檔案中的
volume
被忽略並被上一個容器的容器卷遮蔽時,新增警告。改進了在沒有 tty 的情況下執行
pull
的輸出。當使用多個 Compose 檔案時,在嘗試合併它們之前驗證每個檔案。以前無效的檔案會導致無用的錯誤。
允許
environment
服務選項中的鍵中使用破折號。透過在錯誤訊息中包含檔名來改進驗證錯誤訊息。
1.5.0
(2015-11-03)
破壞性變更
隨著 Compose 檔案中引入變數替換支援,任何在 command:
或 entrypoint:
欄位中使用環境變數 ($VAR
或 ${VAR}
) 的 Compose 檔案都將中斷。
以前,這些值在容器內部插值,使用來自容器環境的值。在 Compose 1.5.0 中,這些值將在主機上插值,使用來自主機環境的值。
要將 Compose 檔案遷移到 1.5.0,請用額外的 $
轉義變數(例如:$$VAR
或 $${VAR}
)。請參閱 https://github.com/docker/compose/blob/8cc8e61/docs/compose-file.md#variable-substitution
主要功能
Compose 現已在 Windows 上可用。
環境變數可在 Compose 檔案中使用。請參閱 https://github.com/docker/compose/blob/8cc8e61/docs/compose-file.md#variable-substitution
可以指定多個 compose 檔案,從而允許您覆蓋預設 Compose 檔案中的設定。有關詳細資訊,請參閱 https://github.com/docker/compose/blob/8cc8e61/docs/reference/docker-compose.md。
當檔案包含無效配置時,Compose 現在會生成更好的錯誤訊息。
up
現在會等待所有服務退出後才關閉,而不是一旦一個容器退出就關閉。可以使用
--x-networking
標誌啟用對新 Docker 網路系統的實驗性支援。在此處閱讀更多資訊: https://github.com/docker/docker/blob/8fee1c20/docs/userguide/dockernetworks.md
新功能
您現在可以選擇將模式傳遞給
volumes_from
。例如,volumes_from: ["servicename:ro"]
。由於 Docker 現在允許您建立帶名稱的卷,因此您可以在
docker-compose.yml
中按名稱引用這些卷。例如,volumes: ["mydatavolume:/data"]
將把名為mydatavolume
的卷掛載到容器內的/data
路徑。如果
volumes
中的條目的第一個元件以.
、/
或~
開頭,則將其視為路徑,並根據需要執行相對路徑的擴充套件。否則,將其視為卷名稱並直接傳遞給 Docker。在此處閱讀有關命名卷和卷驅動程式的更多資訊: https://github.com/docker/docker/blob/244d9c33/docs/userguide/dockervolumes.md
docker-compose build --pull
指示 Compose 在構建每個 Dockerfile 之前拉取其基礎映象。docker-compose pull --ignore-pull-failures
指示 Compose 在拉取單個服務映象失敗時繼續,而不是中止。您現在可以使用
ipc
選項在docker-compose.yml
中指定 IPC 名稱空間。docker-compose run
建立的容器現在可以使用--name
標誌命名。如果您透過 pip 安裝 Compose 或將其用作庫,它現在適用於 Python 3。
image
現在支援映象摘要(除了 ID 和標籤)。例如,image: "busybox@sha256:38a203e1986cf79639cfb9b2e1d6e773de84002feea2d4eb006b52004ee8502d"
ports
現在支援埠範圍。例如,ports: - "3000-3005" - "9000-9001:8000-8001"
docker-compose run
現在支援-p|--publish
引數,類似於docker run -p
,用於將特定埠釋出到主機。docker-compose pause
和docker-compose unpause
已實現,類似於docker pause
和docker unpause
。當使用
extends
從同一 Compose 檔案中的另一個服務複製配置時,可以省略file
選項。Compose 可以作為 Docker 映象安裝和執行。這是一個實驗性功能。
錯誤修復
Docker 守護程序支援的所有
log_driver
選項值現在都受 Compose 支援。docker-compose build
現在可以成功針對 Swarm 叢集執行。
1.4.2
(2015-09-22)
- 修復了 1.4.1 版本中的迴歸問題,該問題導致
docker-compose up
沒有-d
選項會立即退出。
1.4.1
(2015-09-10)
錯誤修復
- 某些配置更改(特別是
links
、volumes_from
和net
的更改)未正確觸發容器重新建立作為docker-compose up
的一部分。 docker-compose up <service>
顯示所有服務的日誌,而不僅僅是指定服務的日誌。- 具有自定義容器名稱的容器在日誌中顯示為
service_number
,而不是其自定義容器名稱。 - 在擴充套件服務時,有時即使配置未更改,容器也會重新建立。
1.4.0
(2015-08-04)
預設情況下,
docker-compose up
現在僅重新建立自建立以來配置已更改的服務的容器。這應該會顯著加快許多應用程式的速度。在 Compose 1.3.0 中引入此功能的實驗性
--x-smart-recreate
標誌已被刪除,並新增了--force-recreate
標誌,用於您想要重新建立所有內容的情況。Compose 的幾個命令 -
scale
、stop
、kill
和rm
- 現在並行而不是按順序對多個容器執行操作,這將在大型應用程式上執行得更快。您現在可以使用
container_name
為服務的容器指定自定義名稱。由於 Docker 容器名稱必須是唯一的,這意味著您無法將服務擴充套件到單個容器之外。使用
extends
時不再需要指定file
選項 - 它將預設為當前檔案。服務名稱現在可以包含點、破折號和下劃線。
Compose 現在可以從標準輸入讀取 YAML 配置,而不是從檔案讀取,方法是將
-
指定為檔名。這使得動態生成配置更容易$ echo 'redis: {"image": "redis"}' | docker-compose --file - up
新增
docker-compose version
命令,用於列印有關 Compose 捆綁依賴項的擴充套件資訊。docker-compose.yml
現在支援log_opt
以及log_driver
,允許您向服務的日誌驅動程式傳遞額外配置。docker-compose.yml
現在支援memswap_limit
,類似於docker run --memory-swap
。使用
volumes
選項掛載卷時,您現在可以傳入守護程序支援的任何模式,而不僅僅是:ro
或:rw
。例如,SELinux 使用者可以傳入:z
或:Z
。您現在可以使用
docker-compose.yml
中的volume_driver
選項指定自定義卷驅動程式,類似於docker run --volume-driver
。修復了一個錯誤,該錯誤導致 Compose 無法從提供普通(非安全)HTTP 的私有登錄檔拉取映象。以前用於解決此問題的
--allow-insecure-ssl
標誌已棄用,現在無效。修復了一個錯誤,該錯誤導致
docker-compose build
在構建依賴於私有 Hub 映象或來自私有登錄檔的映象時失敗。修復了一個錯誤,該錯誤導致 Compose 在 Docker 守護程序尚未完成刪除容器時崩潰。
修復了兩個錯誤,該錯誤導致 Compose 有時會因“重複繫結掛載”錯誤而失敗,或者無法將卷附加到容器,如果
docker-compose.yml
中指定的卷路徑帶有尾隨斜槓。
感謝 @mnowster、@dnephin、@ekristen、@funkyfuture、@jeffk 和 @lukemarsden!
1.3.3
(2015-07-15)
迴歸修復
- 在優雅停止容器時,Compose 將超時設定為 0,實際上每次都強制執行 SIGKILL。
- Compose 有時會根據 Docker API 返回的容器資料的格式而崩潰。
1.3.2
(2015-07-14)
錯誤修復
- 當由舊版 Compose 執行
docker-compose run
建立的一次性容器存在時,docker-compose run
會因名稱衝突而失敗。Compose 現在會在您有此類剩餘容器時顯示錯誤,並告訴您如何刪除它們。 - Compose 未讀取在新位置
~/docker/config.json
中建立的 Docker 身份驗證配置檔案,因此對私有登錄檔的身份驗證會失敗。 - 當容器附加了偽 TTY 時,其在
docker-compose up
中的輸出會被截斷。 - 當映象標籤更新時,
docker-compose up --x-smart-recreate
有時會失敗。 docker-compose up
有時會建立兩個具有相同數字字尾的容器。docker-compose rm
和docker-compose ps
有時會列出不屬於當前專案的服務(儘管沒有容器被錯誤地刪除)。- 如果傳入了無效的服務名稱,某些
docker-compose
命令不會顯示錯誤。
感謝 @dano、@josephpage、@kevinsimper、@lieryan、@phemmer、@soulrebel 和 @sschepens!
1.3.1
(2015-06-21)
錯誤修復
docker-compose build
總是嘗試在構建之前拉取基礎映象。docker-compose help migrate-to-labels
失敗並出現錯誤。- 如果未指定網路模式,Compose 會將其設定為“bridge”,而不是允許 Docker 守護程序使用其配置的預設網路模式。
1.3.0
(2015-06-18)
重要說明
此版本包含破壞性變更,您需要在執行應用程式之前刪除或遷移現有容器 - 有關詳細資訊,請參閱安裝文件的升級部分。
Compose 現在需要 Docker 1.6.0 或更高版本。
改進
Compose 現在使用容器標籤而不是名稱來跟蹤容器。這使得 Compose 速度更快,並且更容易與您自己的工具整合。
Compose 在重新建立服務容器時不再使用“中間容器”。這使得
docker-compose up
更簡單,更具彈性。
新功能
docker-compose up
具有一個實驗性新行為:它將僅重新建立在docker-compose.yml
中配置已更改的服務的容器。這最終將成為預設行為,但現在您可以嘗試一下$ docker-compose up --x-smart-recreate
當在專案的子目錄中呼叫時,
docker-compose
現在將向上遍歷父目錄,直到找到docker-compose.yml
。
docker-compose.yml
中新增了幾個配置鍵
dockerfile
,類似於docker build --file
,允許您指定一個備用 Dockerfile 以與build
一起使用。labels
,類似於docker run --labels
,允許您向容器新增自定義元資料。extra_hosts
,類似於docker run --add-host
,允許您向容器的/etc/hosts
檔案新增條目。pid: host
,類似於docker run --pid=host
,允許您重用與主機相同的 PID 名稱空間。cpuset
,類似於docker run --cpuset-cpus
,允許您指定允許執行的 CPU。read_only
,類似於docker run --read-only
,允許您以只讀方式掛載容器的檔案系統。security_opt
,類似於docker run --security-opt
,允許您指定安全選項。log_driver
,類似於docker run --log-driver
,允許您指定日誌驅動程式。
錯誤修復
docker-compose run
的輸出有時會被截斷,尤其是在 Jenkins 下執行時。- 在
docker-compose.yml
中更改卷配置後,服務的卷有時不會更新。 - 對第三方登錄檔的身份驗證有時會失敗。
- 如果服務設定了
restart
策略,docker-compose run --rm
將無法刪除容器。 - 如果服務在主機上公開了特定埠號,
docker-compose scale
將拒絕將服務擴充套件到 1 個容器以上。 - Compose 將拒絕建立具有相同主機路徑的多個卷條目。
感謝 @ahromis、@albers、@aleksandr-vin、@antoineco、@ccverak、@chernjie、@dnephin、@edmorley、@fordhurley、@josephpage、@KyleJamesWalker、@lsowen、@mchasal、@noironetworks、@sdake、@sdurrheimer、@sherter、@stephenlawrence、@thaJeztah、@thieman、@turtlemonvh、@twhiteman、@vdemeester、@xuxinkun 和 @zwily!
1.2.0
(2015-04-16)
docker-compose.yml
現在支援extends
選項,它允許服務繼承另一個配置檔案中另一個服務的配置。這對於在應用程式之間共享公共配置或為不同環境配置同一應用程式非常有用。這是文件。當將 Compose 與 Swarm 叢集一起使用時,相互依賴的容器將共同排程到同一個節點。這意味著大多數 Compose 應用程式現在開箱即用,只要它們不使用
build
。當將 Compose 與 Swarm 叢集一起使用時,重複呼叫
docker-compose up
現在可靠地工作。傳遞給
build
的目錄、傳遞給env_file
的檔名以及傳遞給volumes
的卷主機路徑現在被視為相對於配置檔案的目錄,而不是執行docker-compose
的目錄。在大多數情況下,它們是相同的,但如果您使用-f|--file
引數指定另一個目錄中的配置檔案,這是一個破壞性變更。服務現在可以使用
net: container:<service>
共享另一個服務的網路名稱空間。在解決依賴關係時會考慮
volumes_from
和net: container:<service>
條目,因此docker-compose up <service>
將正確啟動<service>
的所有依賴關係。docker-compose run
現在接受--user
引數來指定執行命令的使用者,就像docker run
一樣。up
、stop
和restart
命令現在接受--timeout
(或-t
)引數來指定在嘗試優雅停止容器時等待多長時間,就像docker stop
一樣。docker-compose rm
現在接受-f
作為--force
的簡寫,就像docker rm
一樣。
感謝 @abesto、@albers、@alunduil、@dnephin、@funkyfuture、@gilclark、@IanVS、@KingsleyKelly、@knutwalker、@thaJeztah 和 @vmalloc!
1.1.0
(2015-02-25)
Fig 已更名為 Docker Compose,簡稱 Compose。這對您有幾個影響
- 您現在輸入的命令是
docker-compose
,而不是fig
。 - 您應該將 fig.yml 重新命名為 docker-compose.yml。
- 如果您透過 PyPI 安裝,軟體包現在是
docker-compose
,因此請使用pip install docker-compose
安裝它。
除此之外,此版本中還有許多新內容
我們做了一些小的更改,以確保 Compose 能夠與 Swarm(Docker 的新叢集工具 (https://github.com/docker/swarm))一起工作。最終您將能夠將 Compose 指向 Swarm 叢集而不是獨立的 Docker 主機,它將在叢集上執行您的容器,而無需您進行額外的工作。由於 Swarm 仍在開發中,整合比較粗糙,許多 Compose 功能尚不適用。
docker-compose run
現在有一個--service-ports
標誌,用於公開給定服務上的埠。這對於使用互動式偵錯程式執行您的 Web 應用程式非常有用,例如。您現在可以使用 docker-compose.yml 中的
external_links
選項鍊接到應用程式外部的容器。您現在可以使用
--no-build
選項阻止docker-compose up
自動構建映象。這將減少 API 呼叫並執行得更快。如果您在使用
image
鍵時不指定標籤,Compose 將預設為latest
標籤,而不是拉取所有標籤。docker-compose kill
現在支援-s
標誌,允許您指定要傳送到服務容器的確切訊號。docker-compose.yml 現在有一個
env_file
鍵,類似於docker run --env-file
,允許您在單獨的檔案中指定多個環境變數。如果您有很多環境變數,或者希望將敏感資訊排除在版本控制之外,這非常有用。docker-compose.yml 現在支援
dns_search
、cap_add
、cap_drop
、cpu_shares
和restart
選項,類似於docker run
的--dns-search
、--cap-add
、--cap-drop
、--cpu-shares
和--restart
選項。Compose 現在附帶 Bash 選項卡補全 - 請參閱 https://github.com/docker/compose/blob/1.1.0/docs/completion.md 上的安裝和使用文件
許多錯誤已修復 - 有關詳細資訊,請參閱里程碑: https://github.com/docker/compose/issues?q=milestone%3A1.1.0+
感謝 @dnephin、@squebe、@jbalonso、@raulcd、@benlangfield、@albers、@ggtools、@bersace、@dtenenba、@petercv、@drewkett、@TFenby、@paulRbr、@Aigeruth 和 @salehe!
1.0.1
(2014-11-04)
- 新增
--allow-insecure-ssl
選項,允許fig up
、fig run
和fig pull
從不安全的登錄檔拉取。 - 修復了
fig run
在 Jenkins 中不顯示輸出的問題。 - 修復了 Fig 無法構建帶有指向 URL 的 ADD 語句的 Dockerfile 的錯誤。
1.0.0
(2014-10-16)
亮點
Fig 已加入 Docker。 Fig 將繼續維護,但我們也會將 Fig 的精華部分融入 Docker 本身。
這意味著 GitHub 倉庫已移至 https://github.com/docker/fig,我們的 IRC 頻道現在是 Freenode 上的 #docker-fig。
Fig 可以與官方 Docker OS X 安裝程式一起使用。Boot2Docker 將掛載主機的主目錄,因此卷按預期工作。
Fig 支援 Docker 1.3。
現在可以使用
DOCKER_CERT_PATH
和DOCKER_TLS_VERIFY
環境變數透過 TLS 連線到 Docker 守護程序。新增
fig port
命令,它以類似於docker port
的方式輸出服務的宿主機埠繫結。新增
fig pull
命令,它拉取服務的最新映象。新增
fig restart
命令,它重新啟動服務的容器。Fig 透過在服務名稱後附加數字來在服務中建立多個容器。例如,
db_1
、db_2
。為了方便起見,Fig 現在將第一個容器賦予服務名稱的別名。例如,db
。此連結別名也是一個有效的主機名,並新增到
/etc/hosts
中,因此您可以使用其主機名連線到連結的服務。例如,您可以直接使用主機名db
和埠5432
,而不是解析環境變數DB_PORT_5432_TCP_ADDR
和DB_PORT_5432_TCP_PORT
。卷定義現在支援
ro
模式、展開~
和展開環境變數。構建時支援
.dockerignore
。專案名稱可以使用
FIG_PROJECT_NAME
環境變數設定。--env
和--entrypoint
選項已新增到fig run
中。Linux 的 Fig 二進位制檔案現在連結到舊版 glibc,因此它可以在 CentOS 6 和 Debian Wheezy 上執行。
其他
fig ps
現在在 Jenkins 上工作,並且對 Docker 守護程序的 API 呼叫更少。--verbose
顯示更多有用的除錯輸出。- 當啟動一個
volumes_from
指向沒有執行任何容器的服務時,該服務現在將被啟動。 - 許多文件改進。值得注意的是,環境變數已記錄,並且始終使用官方倉庫。
感謝 @dnephin、@d11wtq、@marksteve、@rubbish、@jbalonso、@timfreund、@alunduil、@mieciu、@shuron、@moss、@suzaku 和 @chmouel!厲害。
0.5.2
(2014-07-28)
- 新增
--no-cache
選項到fig build
,它會繞過快取,就像docker build --no-cache
一樣。 - 修復了
dns:
fig.yml 選項,該選項導致 fig 出錯。 - 修復了 fig 無法在 Python 2.6 下啟動的錯誤。
- 修復了日誌流式傳輸錯誤,該錯誤偶爾會導致 fig 退出。
感謝 @dnephin 和 @marksteve!
0.5.1
(2014-07-11)
- 如果服務定義了命令,
fig run [service]
不帶其他引數將執行它。 - 專案名稱現在預設為包含 fig.yml 的目錄,而不是當前工作目錄(如果它們不同)
volumes_from
現在與容器和服務都正常工作- 修復了在
fig up
中重新建立容器時的競爭條件
感謝 @ryanbrainard 和 @d11wtq!
0.5.0
(2014-07-11)
當您執行
fig run
或fig up
時,Fig 現在會啟動連結。例如,如果您有一個依賴於
db
服務的web
服務,fig run web ...
將啟動db
服務。現在可以從 Fig 執行的環境中解析環境變數。只需在您的
fig.yml
中將其指定為空白變數,如果已設定,它將被解析environment: RACK_ENV: development SESSION_SECRET:
fig.yml
現在支援volumes_from
。指定服務和容器的所有卷都將被掛載volumes_from: - service_name - container_name
現在可以在
ports
中指定主機地址ports: - "0.0.0.0:8000:8000" - "127.0.0.1:8001:8001"
fig.yml
現在支援net
和workdir
選項。hostname
選項現在與 Docker CLI 的工作方式相同,拆分為domainname
選項。TTY 行為更加健壯,並且正確支援調整大小。
安全載入 YAML 檔案。
感謝 @d11wtq、@ryanbrainard、@rail44、@j0hnsmith、@binarin、@Elemecca、@mozz100 和 @marksteve 對此版本的幫助!
0.4.2
(2014-06-18)
- 修復了使用
fig run
、fig up
和fig build
時出現的各種編碼錯誤。
0.4.1
(2014-05-08)
- 新增對 Docker 0.11.0 的支援。(感謝 @marksteve!)
- 使專案名稱可配置。(感謝 @jefmathiot!)
- 從
fig run
返回正確的退出程式碼。
0.4.0
(2014-04-29)
- 支援 Docker 0.9 和 0.10
- 拉取映象時正確顯示進度條(不再有滑雪坡)
fig up
現在在任何容器退出時停止所有服務- 新增對 fig.yml 中
privileged
配置選項的支援(感謝 @kvz!) fig up
輸出中的日誌字首縮短並對齊- 只有透過
fig run
啟動的容器才能連結回它們自己的服務 - 在流式傳輸
fig build/run/up
輸出時正確處理 UTF-8(感謝 @mauvm 和 @shanejonas!) - 錯誤訊息改進
0.3.2
(2014-03-05)
- 為
fig run
添加了--rm
選項。(感謝 @marksteve!) - 為
fig.yml
添加了expose
選項。
0.3.1
(2014-03-04)
- 添加了貢獻說明。(感謝 @kvz!)
- 修復了
fig rm
丟擲錯誤的問題。 - 修復了 Docker 0.8.1 上
fig ps
在存在沒有命令的容器時的錯誤。
0.3.0
(2014-03-03)
- 我們現在為 OS X 和 Linux 提供二進位制檔案。不再需要使用 Pip 安裝!
- 新增
-f
標誌以指定備用fig.yml
檔案 - 新增對自定義連結名稱的支援
- 修復了重新建立有時會掛起的錯誤
- 更新 docker-py 以支援 Docker 0.8.0。
- 各種文件改進
- 各種錯誤訊息改進
感謝 @marksteve、@Gazler 和 @teozkr!
0.2.2
(2014-02-17)
- 使用 Cormen/Tarjan 拓撲排序解決依賴關係
- 修復
fig up
不列印日誌輸出的問題 - 以與啟動相反的順序停止容器
- 修復 scale 命令不繫結埠的問題
感謝 @barnybug 和 @dustinlacewell 在本次釋出中的工作。
0.2.1
(2014-02-04)
- 錯誤報告的總體改進(#77,#79)
0.2.0
(2014-01-31)
- 將服務連結到自身,以便執行命令可以訪問正在執行的服務。(#67)
- 更好的文件。
- 使服務依賴關係解析更可靠。(#48)
- 載入帶有
.yaml
副檔名的 Fig 配置。(#58)
非常感謝 @cameronmaske、@mrchrisadams 和 @damianmoore 在本次釋出中的幫助。
0.1.4
(2014-01-27)
- 新增不帶專案名稱的連結別名。這使得環境變數稍微短一些:
REDIS_1_PORT_6379_TCP_ADDR
。(#54)
0.1.3
(2014-01-23)
- 修復埠有時配置不正確的問題。(#46)
- 修復日誌輸出有時不顯示的問題。(#47)
0.1.2
(2014-01-22)
- 為
fig run
新增-T
選項以停用偽 TTY。(#34) - 修復
fig up
需要拉取 ubuntu 映象才能重新建立容器的問題。(#33)感謝 @cameronmaske! - 提高可靠性,修復箭頭鍵並修復
fig run
中的競爭條件。(#34,#39,#40)
0.1.1
(2014-01-17)
- 修復埠未正確暴露的錯誤(#29)。感謝 @dustinlacewell!
0.1.0
(2014-01-16)
- 容器在每次
fig up
時都會重新建立,確保配置與fig.yml
保持最新(#2) - 新增
fig scale
命令(#9) - 使用
DOCKER_HOST
環境變數查詢 Docker 守護程序,以與官方 Docker 客戶端保持一致(以前是DOCKER_URL
)(#19) - 截斷
fig ps
中的長命令(#18) - 填寫命令的 CLI 幫助橫幅(#15,#16)
- 當
fig.yml
缺失時顯示更友好的錯誤(#4) - 修復
fig build
日誌記錄中的錯誤(#3) - 修復構建在步驟長時間沒有生成輸出時會超時的問題(#6)
- 修復透過 Unix 套接字流式傳輸容器輸出時引發錯誤的問題(#7)
非常感謝 @tomstuart、@EnTeQuAk、@schickling、@aronasorman 和 @GeoffreyPlitt。
0.0.2
(2014-01-02)
- 改進文件
- 嘗試除了
localhost
之外,連線到tcp://localdocker:4243
和 UNIX 套接字上的 Docker。 - 改進
fig up
行為 - 為
fig rm
新增確認提示 - 新增
fig build
命令
0.0.1
(2013-12-20)
首次釋出。