Docker Compose 发行说明
重要的
Docker 的文档引用并描述了 Compose V2 功能。
自 2023 年 7 月起,Compose V1 停止接收更新,并且不再出现在新的 Docker Desktop 版本中。 Compose V2 已取代它,并且现已集成到所有当前的 Docker Desktop 版本中。有关更多信息,请参阅 迁移到 Compose V2。
有关更多详细信息,请参阅 Compose 存储库中的发行说明。
2.26.0
2024-03-29更新
- 依赖升级:opencontainers/image-spec v1.1.0
错误修复和增强功能
- 在输出中添加图像拉取失败原因
--no-build
修复了与和一起运行时的崩溃问题--watch
- 修复了没有 TTY 可用且启用菜单时的崩溃问题
- 提高了菜单操作的易读性
2.26.0
2024-03-22更新
- 依赖升级:bump compose-go v2.0.2
- 依赖升级:bump docker v26.0.0
错误修复和增强功能
- 减少 Otel 跟踪命令的超时
- 固定的
config --format json
- 修复了默认构建映像名称的文档
- 在 Compose 中引入了用于绑定挂载的同步文件共享
- 添加了对以下内容的支持
annotations
- 引入
config --variables
列出 Compose 模型变量 - 添加了导航菜单
docker compose up
2.25.0
2024-03-15更新
- 依赖升级:bump compose-go v2.0.0
错误修复和增强功能
- 恢复
config
hebaviour 直到--no-interpolate
设置 - 修复了服务名称 shell 完成
- 为命令添加了
--watch
标志up
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
- 修复了合并标签/网络时的恐慌
--no-path-resolution
添加了对使用时的支持include
- 修复了缺少项目名称的错误
- 固定
--no-interpolate
标志打开config
- 添加了针对 Windows 上观看模式的文件锁定问题的解决方法
- 修复了重复的退出代码状态消息
- 现在撰写
COMPOSE_REMOVE_ORPHANS
尊重up
2.24.6
2024-02-15更新
- 依赖项升级:将 cli 升级到 25.0.3
- 依赖项升级:将 compose-go 升级到 2.0.0-rc.7
错误修复和增强功能
- 修复了通过变量
.env
设置项目文件时文件加载的问题COMPOSE_FILE
ps --status=exited
与 Docker CLI 行为保持一致- 修复了收集大日志时的死锁问题
2.24.5
2024-01-30错误修复和增强功能
- 修复了在 Windows 上构建映像时出现的“无法解决:乱序更改”错误。
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 中引入的 Docker Desktop for Windows 的构建问题。
更新
- 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
watch
从alpha
命令中删除了子命令- 修复了处理接收信号时的错误
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 完成的禁用服务。
Project
在 ps JSON 输出中恢复。- 添加了对 AWS ECR 的 OCI 1.0 回退支持。
- 现在构建不需要解决环境问题。
- 现在,Compose 在 SIGINT/SIGTERM 信号上发送取消事件
compose up
。 - 通过在 时暴露服务端口来修复日志
--verbose
。 - 修复了将内联和环境定义的配置安装在 /<id> 下,直到设置显式目标为止。
- 的固定组合
--pull always --no-build
。 - 修复了日志打印机中的竞争条件。
- 修复了
docker compose up
取消命令上下文时的拆卸问题。
2.23.3
2023-11-22更新
- 依赖项升级:将 buildx 升级到 v0.12.0
2.23.2
2023-11-21更新
- 依赖升级:bump buildkit 0.12.3
- 依赖升级:bump docker 24.0.7
- 依赖升级:bump cli 24.0.7
- 依赖项升级:bump 1.20.2
错误修复和增强功能
- Compose 现在支持
builds.tags
命令push
。 - Compose Watch 现在会在启动时重新构建服务映像。
- 现在
--remove-orphans
不将禁用的服务作为孤立的服务进行管理。 Building
仅当至少有一项服务需要构建时,Compose 才会显示输出日志。
2.23.1
2023-11-16更新
- 依赖项升级:将 compose-go 升级到 v1.20.1
错误修复和增强功能
- 将 Compose 与 OCI 工件最佳实践保持一致。
- 引入
--resolve-image-digests
后,用户可以在发布 Compose 应用程序时通过摘要来密封服务映像。 - 改进了 Compose Watch 配置日志记录。
secrets|configs.driver
Compose 现在使用或拒绝 Compose 文件template_driver
。- 如果缺少依赖项,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
env 变量来传递 env 文件列表 - 添加了
sync+restart
动作compose watch
compose ps
默认情况下与 Docker CLI对齐输出并引入--no-trunc
以保留以前的行为up
修复了和之间的哈希不一致问题configure
down
使用显式服务名称运行时启用的配置文件- 修复了提供的拉取策略无效时的问题
2.22.0
2023-09-21笔记
该
watch
命令现已全面可用 (GA)。您可以直接从 root 命令使用它docker compose watch
。有关更多信息,请参阅 文件监视。
更新
- 依赖项升级:将 golang 升级到 1.21.1
- 依赖项升级:将 compose-go 升级到 v1.19.0
- 依赖项升级:将 buildkit 升级到 v0.12.2
错误修复和增强功能
- 添加了对该
publish
命令的实验性支持。 - 该命令
watch
现在在启动期间构建并启动项目。 - 为标志添加了
policy
选项--pull
。 up
修复了退出时命令的各种竞争和死锁条件。- 修复了构建时的多平台问题。
- 启用显式请求的服务,即使这些服务
profiles
未激活。 - 修复了
config
声明env_file
缺失时的问题。 - 将 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
。- 修复了
.env
使用时的覆盖include
。
2.20.3
2023-08-11更新
- 依赖项升级:将 golang 升级到 1.21.0
- 依赖项升级:将 compose-go 升级到 v1.18.1
- 依赖项升级:将 buildkit 升级到 v0.12.1
错误修复和增强功能
- 提高了同步的速度和可靠性
watch
。 - 在第一条构建线上添加了构建者的名称。
--project-directory
改进了和 的shell 补全--profile
。- 修复了代理配置未传递到旧版构建器的构建问题。
- 删除了成功存在选项依赖项时不必要的警告。
2.20.2
2023-07-19错误修复和增强功能
- 添加了对该
depends_on.required
属性的支持。 - 修复了构建尝试推送未命名服务映像的问题。
- 修复了导致 Windows 上的目标秘密路径未被检查的错误。
- 修复了解决使用 的服务的构建上下文路径的错误
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
命令。 --builder
添加了对和BUILDX_BUILDER
命令的支持build
。- 添加了对Compose 规范中的
include
和属性的支持。attach
- 修复了初始化 CLI 客户端时的 DryRun 模式问题。
- 修复了当一项服务有多个网络时随机丢失网络的错误。
- 修复了 Secrets 文件权限值以符合 Compose 规范。
no-deps
修复了未应用标志的问题。- 修复了一些源代码注释。
--index
修复了未设置选择时的错误。- 修复了等待 e2e 测试中的进程泄漏。
- 提高了一些测试速度。
2.19.1
2023-06-29更新
- 依赖项升级:将 compose-go 升级到 v1.15.1
错误修复和增强功能
- 修复了 上偶发的“容器未连接到网络”错误
compose up
。 - 修复了“请指定构建上下文”错误
compose build
。 - 如果在服务配置中使用绑定挂载,Compose 现在会发出警告
watch
。
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
使用服务映像运行维护命令。 - 修复了检测群体模式期间的错误。
COMPOSE_PROJECT_NAME
修复了通过环境变量设置项目名称时的错误。- 在命令的帮助下调整了卷标志的显示
down
。 - 修复了命令中的错误
up
,该错误不应默默地忽略丢失的depends_on
服务。 - 将前向信号发送到容器的行为与容器行为保持
docker run
一致。 - Compose 现在可以检测网络名称冲突。
- 修复了有关现有卷的警告消息中的拼写错误。
compose -p x logs -f
Compose 现在可以检测命令后启动的新服务。compose
修复了用作项目名称时的错误。watch
修复了目录不存在时命令中的错误。- 删除了重新启动或停止服务时 10 秒的默认超时。
watch
修复了默认应用“重建”策略的错误。- 修复了竞争条件,即退出时等待容器。
- 添加了警告,告诉用户 uid、gid、mode 尚未针对
build.secrets
. watch
修复了观察整个构建上下文而不是仅配置路径的错误。- Compose 现在按创建日期对容器进行排序,以首先缩小旧容器的规模。
- 修复了 Windows 环境下文档生成任务中的错误。
- 更新了文档以反映试运行模式功能已完成。
- 改进了网络标签不匹配的诊断消息。
Building
修复了不涉及构建时渲染部分的错误。- 修复了代码覆盖率指标中的错误。
- 添加了 OTEL 初始化。
- 添加了 GitHub 操作以触发使用 Compose 边缘版本的 Docker Desktop e2e 测试。
- 向 dependentabot 添加了更多忽略规则。
2.18.1
2023-05-17错误修复和增强功能
- 修复了构建图像时的“图像未找到”错误
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
以获取发送到标准输出的状态消息 - 修复了 BuildKit Progressui 集成
- 修复了停止阻止事件循环收集日志的错误
- 恢复了对
--memory
- 修复了容器在终止后没有停止的错误
- Compose 现在允许用户声明构建秘密目标
- 修复了导致配置未更改时重新创建容器的错误
--parallel
修复了与大量依赖服务一起使用时的竞争条件- Compose 现在会检查本地映像与所需平台是否匹配
compose down
修复了运行时的本地图像删除问题--project-name
- Compose 现在可以检测尝试删除网络的活动端点并跳过并发出警告
- 删除了不必要的 [] 输出
- Compose 检测到 Windows 终端不是
console.File
以避免恐慌 --parallel
现在优先于COMPOSE_PARALLEL_LIMIT
- Compose 现在报告禁用 Swarm 时找不到外部网络
2.17.2
2023-03-26更新
- 依赖项升级:将 compose-go 升级到 v1.13.2
错误修复和增强功能
.
修复了包含大写字符或名称中的目录的无效项目名称错误。修复了 撰写#10405
2.17.1
2023-03-24更新
- 依赖项升级:将 buildkit 升级到 v0.11.5
- 依赖项升级:将 compose-go 升级到 v1.13.1
- 依赖项升级:将 golang 升级到 1.20.2
错误修复和增强功能
- 修复了命令恐慌
alpha watch
。拉取请求 撰写#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
错误修复和增强功能
--wait-timeout
根据命令引入up
。修复了 撰写#10269- 使
compose service --hash
输出按服务名称排序。拉取请求 撰写#10278 - Compose 现在呈现一个紧凑的 TUI 进度报告来监控图层下载。拉取请求 撰写#10281
- 推出
restart
用于depends_on
.修复了 撰写#10284 NO_COLOR
添加了对环境变量的支持。修复了 撰写#10340- 进度编写器现在使用
dockercli.Err
流。修复了 撰写#10366 additional_contexts
添加了对服务配置的支持build
。修复 撰写#9461 撰写#9961watch
在模式下添加了文件删除/重命名处理。拉取请求 撰写#10386- 在模式中引入了一个
ignore
属性。watch
拉取请求 撰写#10385 - Compose 现在使用进度编写器来显示副本状态。拉取请求 撰写#10387
-p
更新了/标志的参考文档--project-name
。修复了 docs#16915、 compose-spec#311- 引入了
replace
标签来跟踪服务的新旧容器之间的关系。修复了 撰写#9600 - 修复了一个错误,该错误导致服务重新启动后依赖服务未重新启动。修复了 撰写#10263
- Compose 现在会忽略模式下没有构建部分的服务
watch
。修复了 撰写#10270 - Compose 现在应用伪子命令的配置选项。修复了 撰写#10286
- Compose 仅管理带有 config_hash 标签的容器(即由 compose 创建的)。修复了 撰写#10317
- 如果规范化后项目名称为空,Compose 会触发错误。修复了 撰写#10313
- Compose 通过检查
depends_on
关系仅重新启动所需的服务。修复了 撰写#10337 - 修复了小型终端上的显示问题。修复了 撰写#10322
- 修复了构建内置图像 ID 集合的问题。拉取请求 撰写#10372
- 使用配置的名称分隔符来定义一次性容器名称。修复了 撰写#10354
- 修复了重新创建容器时的并发地图读/写问题。修复了 撰写#10319
- Compose 现在支持
stop
和rm
命令的试运行模式。拉取请求 撰写#10257 - Compose 现在支持命令的空运行模式
pull
。拉取请求 撰写#10341 - Compose 现在支持命令的空运行模式
push
。拉取请求 撰写#10355 - Compose 现在支持命令的空运行模式
exec
。拉取请求 撰写#10252 - Compose 现在支持命令的空运行模式
restart
。拉取请求 撰写#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
错误修复和增强功能
--remove-orphans
为命令引入compose create
。修复了 撰写#9718- 当终端太小时,缩短了 TTY 输出。修复了 撰写#9962
- 添加了
remove-orphans
运行功能。修复了 撰写#9718 - 引入了实验
watch
命令。拉取请求 撰写#10163 - Compose 现在允许为 TTY 分配
-t
.修复了 撰写#10161 - 引入了实验
dry-run
命令。拉取请求 撰写#10173 - 更新了文档以解释配置并行性的方法。拉取请求 撰写#10198
- 通过
logs
为.-n
--tail
修复了 撰写#10199 - 添加了对
docker compose build --push
.拉取请求 撰写#10148 - 添加
--scale
到命令中compose create
。修复了 撰写#10208 - 重命名
convert
为config
以与 Compose V1 UX 保持一致。拉取请求 撰写#10214 - Compose 现在将代理配置作为构建参数传递。修复了 撰写#8797
compose up
修复了忽略不是由 Compose 创建的容器的解析问题。修复了 撰写#10162- 修复了日志格式化程序初始化中的 goroutine 泄漏。修复了 撰写#10157
- 修复了当所有正在运行的容器停止时撰写日志不会退出的问题。拉取请求 撰写#10181
- 修复了文档以反映
docker compose ps
与docker ps
.拉取请求 撰写#10195 - 修复了找不到远程 Buildx 驱动程序的问题。修复了 撰写#9893
- 改进了重新创建服务容器时的日志记录。拉取请求 撰写#10236
- 修复了 Compose 现在仅等待与等待条件有关的容器的问题。修复了 撰写#10200
- Compose 现在可以防止分配给 nil 映射中的条目。修复了 撰写#10244
- 添加了用于 Cucumber 测试的专用 GitHub Action 工作流程。拉取请求 撰写#10165
- 在紧凑日志模式下切换时清理了 TUI 行。修复了 撰写#10201
- 添加了倾斜观察器以检测观察模式下的代码更改。拉取请求 撰写#10218
- Compose 现在支持命令的空运行模式
kill
。修复了 撰写#10210 pause
Compose 现在支持命令 的试运行模式。修复了 compose#10217cp
Compose 现在支持命令 的试运行模式。修复了 compose#10235
2.15.1
2023-01-09更新
- 依赖项升级以修复 Golan CVE-2022-27664 和 CVE-2022-32149
错误修复和增强功能
- 添加了对 UTS 命名空间的支持。修复了 撰写#8408
- 修复了未设置过滤器时的过滤问题。修复 路线图#418
- 修复了构建步骤期间的并发地图写入问题。拉取请求 撰写#10151
- 修复了 stdin 不是终端时的问题。修复了 撰写#9739
2.15.0
2023-01-05更新
- 依赖项升级:将 compose-go 升级到 v1.8.1
- 依赖项升级:将 cli-docs-tool 升级到 0.5.1
错误修复和增强功能
privileged
在该部分中添加了对属性的支持service.build
。拉取请求 撰写#10112- 引入
--ignore-buildable
忽略拉取时的可构建图像。修复了 撰写#8805 - 引入
--no-attach
忽略某些服务输出。修复了 撰写#8546 - 修复了设置
logs
时间的问题。driver:none
修复了 撰写#9030 - Compose 现在依赖于 dockerCLI.streams。拉取请求 撰写#10082
- 修复了服务哈希必须排除副本的问题。修复了 撰写#10077
- Compose 现在根据项目而不是运行的容器检查服务名称。修复了 撰写#9951
- 修复了安全选项支持(seccomp 和 unconfined)。修复了 撰写#9505
- 修复了在源文件较小的情况下使用组合配置时的空文件问题。修复了 撰写#10121
--pull
修复了未应用于 的问题compose up
。修复了 撰写#10125- Compose 不仅应该忽略自动删除的容器,还应该忽略孤立容器的“正在进行的删除”。拉取请求 撰写#10136
- Compose 根据 限制构建并发性
--parallel
。修复了 撰写#9091
2.14.2
2022年12月20日更新
- 依赖项升级:将 containerd 升级到 1.6.14
错误修复和增强功能
- Compose 现在在创建容器时使用 DOCKER_DEFAULT_PLATFORM 来确定平台。修复了 撰写#10041
- Compose 现在可以检测依赖项何时无法启动。修复了 撰写#9732
- 修复了 WCOW 卷安装。修复了 撰写#9577
- 使用时仅列出正在运行的容器
--all=false
。修复了 撰写#10085 - 修复了运行 pull 时的回归
--ignore-pull-failures
。修复了 撰写#10089 - 修复了 CPU 配额问题。修复了 撰写#10073
- 修复了撰写日志上的竞争条件。修复了 撰写#8880
- 通过将其重命名为 ProjectOptions,将 projectOptions 更新为公开。修复了 撰写#100102
2.14.1
2022-12-15更新
- 依赖升级:bump 转到1.19.4
- 依赖项升级:将 containerd 升级到 1.6.12
错误修复和增强功能
- 添加
--parallel
以限制并发引擎调用。拉取请求 撰写#10030 - 区分日志中的 stdout 和 stderr
up
。修复了 撰写#8098 compose ps
与对齐输出docker ps
。修复了 撰写#6867- 添加
--include-deps
到推送命令。拉取请求 撰写#10044 - 引入了
--timestamp
上的选项compose up
。修复了 撰写#5730 - 现在,Compose 在从环境创建机密时会应用 uid/gid。拉取请求 撰写#10084
- 修复了等待附加依赖项时的死锁。修复了 撰写#10021
- 修复了收集拉取图像 ID 时的竞争条件。修复了 撰写#9897
- Compose 不会停止
pull
可构建图像的命令。修复了 撰写#8724 - 修复了没有容器可附加时的极端情况。修复了 撰写#8752
- Compose 容器的启动必须按顺序运行,以便引擎在配置的范围内分配不同的端口。修复了 撰写#8530
- 修复了
repository:tag
.修复了 撰写#9208 - 当用户明确设置时从文件加载项目。修复了 撰写#9554
2.14.0
2022-12-02更新
- 依赖项升级:将 compose-go 升级到 v1.8.0
- 依赖升级:bump 转到1.19.3
错误修复和增强功能
oom_score_adj
向服务定义添加了字段。拉取请求 撰写#10019- 添加了 tmpfs 挂载权限的模式字段。拉取请求 撰写#10031
- Compose 现在仅停止在
up
中断时启动的服务。修复了 撰写#10028 - Compose 现在加载目标服务的隐式配置文件。修复了 撰写#10025
- 如果设置了,则不需要
service.build.platforms
设置Compose。service.platform
修复了 撰写#10017 --ansi=never
如果设置了,则在 buildx 映像构建期间使用纯输出。修复了 撰写#10020COMPOSE_IGNORE_ORPHANS
环境变量现在的行为更加一致。修复了 撰写#10035- Compose 现在使用正确的图像名称分隔符
convert
。修复了 撰写#9904 - 修复了
run
使用network_mode: service:NAME
.修复了 撰写#10036
2.13.0
2022-11-23更新
- 依赖项升级:将 containerd 升级到 1.6.10
- 依赖项升级:将 docker-credential-helpers 升级到 v0.7.0
- 更新 CI 依赖项。拉取请求 撰写#9982
错误修复和增强功能
- 添加了命令
no-consistency
选项convert
。修复了 撰写#9963 - 添加了命令
build
选项run
。修复了 撰写#10003 restart_policy.condition
修复了到引擎支持值的映射。修复了 compose#8756、 docs#15936- 修复了缺少的支持
deploy.reservation.memory
。修复了 撰写#9902 - 修复了一个错误,以防止使用arg
COMPOSE_PROFILES
时使用--profile
。修复了 撰写#9895 - 修复了一个错误,以防止在依赖将构建此映像的服务时拉取服务的映像。修复了 撰写#9983
- 修复了找不到容器编号标签时的解析问题。修复了 撰写#10004
DOCKER_DEFAULT_PLATFORM
Compose 现在使用未定义时定义的平台值service.platform
。修复了 撰写#9889- 删除了已弃用的依赖项
gotest.tools
v2 的使用。拉取请求 撰写#9935 kind/feature
从过时的机器人进程中排除了标记为 的问题。修复了 撰写#9988
2.12.2
2022年10月21日更新
- 更新了 Docker Engine API 以恢复与 Linux 打包所需的 Golang 1.18 的兼容性。拉取请求 撰写#9940
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.12.2 版本页面。
2.12.1
2022年10月21日安全
- 更新了 Docker 引擎 API 以应用 CVE-2022-39253的修复。拉取请求 撰写#9934
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.12.1 版本页面。
2.12.0
2022年10月18日更新
CI 更新文档存储库路径
compose-go从 1.5.1升级到1.6.0
更新至 1.19.2 以解决 CVE-2022-2879、CVE-2022-2880、CVE-2022-41715
错误修复和增强功能
- 添加了
quiet
推送图像时的选项。修复了 撰写#9089 - 修复了命令的误导性错误消息
port
。拉取请求 撰写#9909 - 修复了一个错误,以防止 Compose 尝试删除不存在的容器时失败。由 compose 修复 #9896
- 切换了 GitHub 问题模板表单
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.12.0 版本页面。
2.11.2
2022-09-27笔记
- 环境文件语法和插值的更新:请参阅 compose#9879
- Compose v2 不支持
DOCKER_HOST
通过文件设置.env
更新
- compose-go从 1.5.1升级到1.6.0
错误修复和增强功能
- 修复了一个错误,以防止有效环境变量值出现“无效模板”错误。修复 compose##9806、 compose##9746、 compose##9704、 compose##9294
docker compose build
修复了一个错误以确保使用新图像。修复 compose#9856DOCKER_DEFAULT_PLATFORM
修复了未设置时的跨架构构建。修复 compose#9864- 修复了使用时的间歇性冲突错误
depends_on
。修复 compose#9014 CMD
当入口点被覆盖时清除服务。修复 compose#9622- 未定义时配置默认构建器导出
build.platforms
。修复 compose#9856 - 修复了一个错误,以通过 DOCKER_DEFAULT_PLATFORM 或属性优先保留定义的平台
service.platform
。修复 compose#9864 DOCKER_HOST
删除了对in文件的支持.env
。修复 compose#9210- 修复了一个错误,以确保在运行命令中覆盖入口点时清理服务命令。修复 compose#9622
- Deps:修复了图遍历期间的竞争条件。修复 compose#9014
- CI 现在可以在 Windows 和 macOS 上运行,包括通过 Docker Desktop 进行 E2E 测试
- 添加了更多信息,当
service.platform
不属于service.build.platforms
- GitHub Workflows 安全强化
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.11.2 版本页面。
2.11.1
2022-09-20错误修复和增强功能
depends_on
修复了服务有时保持状态的错误volumes_from
。修复 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
- 依赖项升级:从 2.3.5 升级 github.com/AlecAivazis/survey/v2
- 依赖项升级:将 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 - 修复了使用 --no-interpolate 选项时将 $ 转换为 $$ 的 docker-compose 转换问题。修复 compose#9160
- 修复
build.go
访问自定义标签直接导致panic的问题。请参阅 撰写#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
即使图像存在于本地 if 也可以拉取图像的问题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。
- 修复了启动/重新启动/暂停/取消暂停的命令,以便如果从 Compose 文件运行,也会应用 Compose 模型。修复 compose#9705和 compose#9705。
- 删除了一些子命令的帮助文本中的额外空格。
- 修复了
compose create
当命令行中的值配置为默认值时不覆盖服务拉取策略。修复 compose#9717。 - 过滤掉“commandConn.Close- warning”消息。修复 compose#8544。
- 修复/启动/运行不等待禁用的依赖项。修复 compose#9591。
- 在 上应用了 Compose 模型
compose kill
,添加了--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。
错误修复和增强功能
- 覆盖父命令 PreRun 代码
compose version
。修复 compose#9698。 LinkLocalIPs
V2 中已修复。修复 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
通过添加linter 来提高代码质量。
错误修复和增强功能
- 修复了插值错误消息输出。修复 compose-spec/compose-go#292。
- 定义环境变量评估的优先级。修复 compose#9521、 compose#9638、 compose#9608、 compose#9578。 撰写#9468和 撰写#9683。
- Docs CI:修复了创建 PR 时使用推送到分叉的问题。
- 使用 golang 版本的环境变量并将 GitHub Actions 从 v2 更新到 v3。
- 使用 google/addlicense而不是 kunalkushwaha/ltag。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.8.0 版本页面。
2.7.0
2022-07-20新的
- 在构建步骤中添加了对环境机密的支持。修复 compose#9606。
更新
- 依赖项升级:升级 到 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。
- 修复了由空字符串参数引起的恐慌。修复 compose-switch#35。
- 修复了启动/重新启动,以免影响一次性容器。修复 compose#9509。
volumes_from
修复了当目标是容器而不是服务时保留容器引用。修复 compose#8874。CustomLabels
build.go:添加了初始化地图 if 的修复nil
。- 添加了新目标以在运行 e2e 测试之前构建 Compose 二进制文件。
- CI:发布了在文档存储库上打开 PR 并包含最新更改的工作流程。
- e2e:添加了
ps
. - e2e:拆分暂停测试并添加更多案例。
- e2e:添加更多开始/停止测试用例。
有关完整的更改日志或其他信息,请查看 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。 - 修复了
compose up
使用选项时的“找不到服务”错误--no-deps
。修复 #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新的
- 将标签属性添加到构建部分。除了图像属性中定义的标签之外,还可以在此属性中定义要应用于最终图像的标签。
- 添加了端到端测试,以确保环境变量优先级不会回归。
- 添加了 ddev 的端到端测试。
更新
- 依赖项更新:将 compose-go 升级到 1.2.6。
- 依赖项更新:将 compose-go 升级到 1.2.7。
- 依赖项更新:将 golang 升级到 1.18。
错误修复和增强功能
- 修复
compose up
为仅附加到具有启用配置文件的项目中声明的服务。修复 #9286。 - 修复了从多个服务提取相同图像时的闪烁提示。修复 #9469。
- 修复了 compose go 将 .env 文件导入操作系统环境的问题,以允许通过此文件设置变量(例如 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。
- 澄清了传递多个撰写文件时的默认工作目录。
- cp 命令:默认行为复制到服务的所有容器。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.5.1 版本页面。
2.5.0
2022-04-29错误修复和增强功能
compose down
修复了指定标志时命令出现的恐慌-p
。修复 #9353。- 将新创建的项目作为输入传递以启动服务 (
docker compose up
)。修复 #9356。 - 包含在 docker-compose 文件中的链接下声明为隐式依赖项的服务。修复 #9301。
- 添加了更改
docker compose pull
命令以遵循定义的策略:1) 跳过配置为 的服务pull_policy: never
2) 忽略具有现有映像和pull_policy: missing
.修复 #3660。 - 为了防止
down
恐慌,不再忽略从资源构建项目的错误。修复 #9383。 - 强制项目名称为小写。修复 #9378。
- 添加了对构建时秘密的支持。修复 #6358。
- 已更改为允许在无法使用挂载时
compose-go
(重新)构建引擎 API 使用的卷字符串。bind
修复 #9380。 - 提供 checksums.txt 文件并添加
--binary
以允许在不同操作系统中进行验证。修复 #9388。 - 添加了更改,以便检查本地拉取的图像的 ID 并将其保留到
com.docker.compose.image
.修复 #9357。 - 修复了有关 IPAM 网关设置的问题。修复 #9330。
- 添加了对 docker compose 二进制文件的 ppc64le 架构的支持。
--no-TTY
修复了文档中的搜索/替换拼写错误。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.5.0 版本页面。
2.4.1
2022-04-04错误修复和增强功能
--rm flag
当使用此标志运行容器时,将值按原样传递给 Docker CLI。修复 #9314。- 从命令构建映像时,将 ssh 配置添加到构建选项
docker compose up
。修复 #9338。 - 如果需要 TTY,则添加对容器检查的检查。运行指定的服务
tty:true
现在显示控制台输出。修复 #9288。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.4.1 版本页面。
2.4.0
2022-04-1更新
- 依赖项更新:将 buildx 升级到 v0.8.1。修复处理构建上下文扫描错误时可能出现的恐慌。
错误修复和增强功能
- 将交互式标志“-i”从 Compose CLI 传递到 Docker 来运行 exec 命令。修复 #9315。
COMPOSE_PROJECT_NAME
Compose 命令现在考虑环境变量的值。修复 #9316。compose down
修复了在未启动任何服务或未删除资源的情况下执行命令时返回错误的问题。错误是由于命令尝试删除不存在的默认网络造成的。修复 #9333。- 在构建部分引入了对
cache_from
、cache_to
和属性no_cache
的支持。pull
这些属性允许强制从源完全重建并检查注册表中是否使用了图像。这些更改为 compose build(或等效)命令的提供--no-cache
和选项提供了基础。--pull
--ssh
引入了对build
来自 CLI 和 Compose 文件的命令的标志的支持。修复 #7025。--ssh
修复了标志描述中的拼写错误。与#7025相关 。- 将 Kubernetes 依赖项固定到与 buildx 中相同的版本。
- 将交互式标志从 Compose CLI 传递到 Docker 来运行 exec 命令。
- 修复了并行运行的起停端到端测试的竞争条件。
- 删除了有关过时警告的代码。
- 供应商: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。
- 删除了用于运行和执行命令的 -i 和 -t 选项中的“已弃用”提及。这些选项默认打开并正在使用。修复 #9229。
- 从 --filter 标志中删除了“已弃用”提及,以保持与其他命令的一致性。
- 不再需要获取原始 compose.yaml 文件来运行“docker compose Kill”。
更新
- 依赖项更新:将 github.com/spf13/cobra 从 1.3.0 升级到 1.4.0。 Cobra 库不再需要 Viper 及其所有间接依赖项 请参阅 cobra 的发布页面。
- 依赖项更新:将 buildx 从 v0.7.1 升级到 v0.8.0。
错误修复和增强功能
- 恢复了“compose up -d”的行为,即使用刷新的内容重新创建撰写文件映像的容器。修复 #9259。
- Docker compose --status、--filter 和 --format 标志文档更新。
docker compose down -v
现在不会根据该选项的预期和记录的行为删除外部卷和网络。每当指定项目时,它现在也用于强制只删除 compose.yaml 文件中列出的资源。修复 #9172、 #9145。- 更改了 Compose API 参考文档自动化以获取代码与文档的差异。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.3.4 版本页面。
其他版本
(2022年3月8日至2022年4月14日)
对于 1.29.2 之后和 2.3.4 之前的版本,请查看 Compose 存储库版本页面。
1.29.2
(2021-05-10)
各种各样的
docker-compose
删除了命令中使用的提示up
。撞到
py
了。1.10.0
requirements-indirect.txt
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)
Bug修复
相
--env-file
对于当前工作目录。设置的环境文件路径--env-file
现在相对于当前工作目录,并覆盖.env
位于项目目录中的默认文件。storage_opt
通过更新 Compose 架构修复了缺失的服务属性。修复了构建
extra_hosts
列表格式。删除了 上的附加错误消息
exec
。
各种各样的
- 将
compose.yml
和添加compose.yaml
到默认文件名列表中。
1.28.5
(2021-02-26)
虫子
修复了 shell 到 SSH 客户端时出现的 OpenSSL 版本不匹配错误(通过跳转到包含修复程序的 docker-py 4.4.4)。
向本机构建器添加了缺少的构建标志:
platform
、isolation
和extra_hosts
。删除了本机构建上的信息消息。
修复了服务日志记录驱动程序设置为“无”时的日志获取错误。
1.28.4
(2021-02-18)
Bug修复
- 通过将 docker-py 升级到 4.4.3 修复了 SSH 端口解析。
各种各样的
- 将 Python 升级到 3.7.10。
1.28.3
(2021-02-17)
Bug修复
修复了包含前导“s”/“h”时的 SSH 主机名解析,并删除了隐藏错误的安静选项(通过 docker-py 升级到 4.4.2)。
修复了选项的按键错误
--no-log-prefix
。修复了服务配置文件不正确的 CLI 环境变量名称:
COMPOSE_PROFILES
而不是COMPOSE_PROFILE
.修复了鱼的完成情况。
各种各样的
将加密技术提升至 3.3.2。
删除了日志驱动程序过滤器。
有关此版本中修复的 PR 和问题的列表,请参阅 Compose 1.28.3。
1.28.2
(2021-01-26)
Bug修复
Linux 静态构建恢复到 Python 3.7 版本
添加 bash 补全
docker-compose logs|up --no-log-prefix
各种各样的
- CI 设置更新
1.28.0
(2021-01-20)
特征
通过设备请求添加了对 NVIDIA GPU 的支持。
添加了对服务配置文件的支持。
通过 shell 到本地 SSH 客户端,更改了 Docker CLI 的 SSH 连接方法。设置
COMPOSE_PARAMIKO_SSH=1
环境变量以启用旧行为。添加了一个标志来禁用日志前缀。
添加了 ANSI 输出控制标志。
build
Docker Compose 现在在构建映像时使用本机 Docker CLI 的命令。设置COMPOSE_DOCKER_CLI_BUILD=0
环境变量以禁用此功能。
Bug修复
parallel_pull=True
默认制作。恢复了非集群模式下配置的警告。
--file
定义时考虑到project_dir
.修复了 上的服务附加错误
compose up
。
各种各样的
添加了使用指标。
与 COMPOSE 规范同步的架构。
改进了缺少强制环境变量的故障报告。
升至
attrs
20.3.0。升至
more_itertools
8.6.0。升至
cryptograhy
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。
放宽了对基础镜像到最新次要镜像的限制。
更新了自述文件。
1.27.4
(2020-09-24)
Bug修复
删除了绑定安装的路径检查。
修复了端口渲染以输出非 v1 的长格式语法。
向 Docker 套接字地址添加了协议。
1.27.3
(2020-09-16)
Bug修复
合并
max_replicas_per_node
于docker-compose config
.修复
depends_on
了docker-compose config
.修复了某些容器未在 上运行时的缩放问题
docker-compose up
。driver_opts.device
为驱动程序启用相对路径local
。字段允许使用字符串
cpus
。
1.27.2
(2020-09-10)
Bug修复
- 修复了容器附加的错误
docker-compose run
。
1.27.1
(2020-09-10)
Bug修复
指定
docker-compose run
时固定。service.scale
允许
driver
外部网络的属性作为 Swarm 网络传播问题的临时解决方法。将新的内部架构版本固定为
3.9
默认版本。保留 Compose 文件中配置的版本号。
1.27.0
(2020-09-07)
特征
合并 2.x 和 3.x Compose 格式并与
COMPOSE_SPEC
架构保持一致。实施服务模式
ipc
。COMPOSE_PROJECT_NAME
在容器模式下传递环境变量。使
run
行为方式与 相同up
。docker build
在设置环境变量docker-compose run
时使用。COMPOSE_DOCKER_CLI_BUILD
使用 docker-py 默认 API 版本进行引擎查询 (
auto
)。network_mode
在构建时解析。
Bug修复
不需要构建时忽略构建上下文路径验证。
通过 docker-py 修复了浮点到字节的转换至 4.3.1。
修复了设置部署部分时的缩放错误。
修复了
docker-py
碰撞setup.py
。修复了实验性构建失败检测。
修复了到 Docker CLI 的上下文传播。
各种各样的
升至
docker-py
4.3.1。升至
tox
3.19.0。升至
virtualenv
20.0.30。添加了文档同步脚本。
1.26.2
(2020-07-02)
Bug修复
docker-py
使用 pip 安装时强制使用4.2.2 作为最低版本。
1.26.1
(2020-06-30)
特征
- 从 4.2.1升至
docker-py
4.2.2。
Bug修复
docker-py
使用 pip 安装时强制使用4.2.1 作为最低版本。修复了非 Docker 端点的上下文加载。
1.26.0
(2020-06-03)
特征
添加了
docker context
支持。将缺少的测试依赖项添加
ddt
到setup.py
.添加
--attach-dependencies
到用于附加到依赖项的命令up
。允许与
COMPOSE_COMPATIBILITY
环境变量兼容的选项。升级
Pytest
到 5.3.4 并添加与新版本的重构兼容性。从 1.1.1f升至
OpenSSL
1.1.1g。certifi
从 2019.11.28跃升至 2020.4.5.1。从 4.2.0升至
docker-py
4.2.1。
Bug修复
来自 的正确转义值
env_files
。与上游(docker/cli)同步撰写模式。
删除了
None
exec 命令上的条目。添加了
distro
包以获取发行版信息。添加
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)
Bug修复
修复了 CI 脚本以强制最低 MacOS 版本为 10.11。
修复了环境文件中没有值的键的 docker-compose exec。
1.25.3
(2020-01-23)
Bug修复
修复了 CI 脚本以强制使用 Python3 进行编译。
在发布页面上更新了二进制文件的 sha256。
1.25.2
(2020-01-20)
新功能
COMPOSE_COMPATIBILITY
Docker Compose 现在允许与环境变量兼容的选项。
Bug修复
version
修复了当该字段设置为无效值时导致 Docker Compose 崩溃的问题。现在,当版本字段中使用无效值时,Docker Compose 会显示错误消息。修复了导致 Docker Compose 在终端外运行命令时错误渲染消息的问题。
1.25.1
(2020-01-06)
Bug修复
APIError
在使用它创建和启动容器之前将解释解码为 Unicode。Docker Compose 会丢弃
com.docker.compose.filepaths
具有 as 值的标签None
。当标签源自 stdin 时,通常会发生这种情况。添加了 OS X 二进制文件作为目录,以解决 macOS Catalina 二进制文件扫描导致的启动速度慢的问题。
HOME
运行时以容器模式传递环境变量script/run/run.sh
。Docker Compose 现在报告无法拉取但需要构建的镜像。
1.25.0
(2019-11-18)
新功能
CLICOLOR
通过将env 变量更改为 来将 no-colors 设置为 true0
。将工作目录、配置文件和环境文件添加到服务标签。
添加了 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
libmusl
为 Alpine Linux生成二进制文件的增强功能。仅拉取无法构建的图像。
该
scale
属性现在接受0
作为值。在命令中添加了一个
--quiet
选项和一个--no-rm
选项docker-compose build
。--no-interpolate
向命令添加了一个选项docker-compose config
。将 MacOS 版本的 OpenSSL 从
1.1.0
提升到1.1.1c
.docker-compose.yml
添加了对文件配置选项的支持credential_spec
。无需提取图像即可解析摘要。
升级
pyyaml
到版本4.2b1
.降低了尝试删除不存在的图像
warning
的情况的严重性。down
在可能的情况下,强制要求对项目事件使用改进的 API 字段。
setup.py
针对 现代进行了更新pypi/setuptools
,并删除了pandoc
依赖项。已删除
Dockerfile.armhf
,不再需要。
Bug修复
使容器服务颜色具有确定性,包括删除红色。
修复了非 ASCII 字符错误(仅限 Python 2)。
将图像大小更改为十进制格式,以与 Docker CLI 保持一致。
tty
通过Python POSIX 支持获取的大小。修复了相同文件的
extends
优化。固定的
stdin_open
。--remove-orphans
修复了使用选项时遇到被忽略的问题up --no-start
。固定
docker-compose ps --all
命令。修复了
depends_on
依赖重新创建行为。修复了命令的 bash 完成
docker-compose build --memory
。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)
特征
添加了对使用该协议连接到 Docker 引擎的支持
ssh
。添加了一个
--all
标志,以docker-compose ps
在命令的输出中包含已停止的一次性容器。添加了 bash 补全
ps --all|-a
。添加了对 credential_spec 的支持。
添加
--parallel
到docker build
的选项bash
并zsh
完成。
Bug修复
修复了尝试从私有注册表中提取映像时 Compose 无法正确处理某些有效凭证助手的错误。
docker-compose start
修复了创建容器之前的输出具有误导性的问题。Compose 将不再接受来自环境文件的变量名称中的空格。这与 Docker CLI 行为相匹配。
如果服务尝试在卷部分声明重复的挂载点,Compose 现在将报告配置错误。
修复了 Compose 容器化版本的问题,该问题阻止用户在
run
或启动的交互式会话期间写入标准输入exec
。启动的一次性容器
run
不再采用服务的重启策略,而是设置为永不重启。修复了导致某些容器事件未出现在命令输出中的问题
docker-compose events
。丢失图像将不再停止
docker-compose down
命令的执行。现在改为显示警告。virtualenv
macOS CI 的强制版本。修复了网络有配置时 Compose 文件的合并
None
。CTRL+C
通过启用bootloader_ignore_signals
解决了问题pyinstaller
。更新
docker-py
版本以3.7.2
修复 SSH 和代理配置问题。修复了发布脚本和发布文档中的一些拼写错误。
1.23.2
(2018-11-28)
Bug修复
恢复了 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)
Bug修复
修复了使用早于 Compose 版本创建的容器会导致意外崩溃的错误
1.23.0
。--project-directory
修复了标志的行为会根据使用的子命令而变化的问题。
1.23.0
(2018-10-30)
重要的提示
此版本中 Compose 创建的容器的默认命名方案已从 更改为<project>_<service>_<index>
,
<project>_<service>_<index>_<slug>
其中<slug>
是随机生成的十六进制字符串。请确保在升级之前相应地更新依赖于旧命名方案的脚本。
特征
up
崩溃后重新启动的容器的日志现在将显示在和命令的输出中logs
。向命令添加了
--hash
选项docker-compose config
,允许用户打印每个服务配置的哈希字符串,以方便滚动更新。向命令添加了
--parallel
标志docker-compose build
,允许 Compose 同时构建最多 5 个图像。pull
现在,即使并行拉取多个映像,该命令的输出也会报告状态/进度。对于具有多个名称的映像,Compose 现在将尝试匹配命令输出中服务配置中存在的名称
images
。
Bug修复
run
修复了同一服务的并行命令由于名称冲突而失败的问题。修复了 Windows 客户端上路径长度超过 260 个字符会导致失败的问题
docker-compose build
。/var/run/docker.sock
修复了尝试使用 Windows 版 Docker Desktop 挂载会导致失败的错误。--project-directory
Compose 现在使用该选项来确定在何处查找.env
文件。docker-compose build
尝试使用gcloud 凭据助手提供的凭据提取映像时不再失败。修复了
--exit-code-from
选项以docker-compose up
始终报告实际的退出代码,即使所监视的容器不是退出的原因。修复了在某些情况下无法重新创建服务的问题,其中卷将映射到与该映像的 Dockerfile 中声明的卷相同的安装点。
修复了导致多个网络的哈希配置不一致,导致某些服务不必要重启的错误。
修复了一个错误,该错误会导致名称包含一个或多个点字符的服务的变量替换失败。
修复了使用容器化版本的 Compose 时的管道处理问题。
修复了导致
external: false
Compose 文件中的条目打印external: true
为docker-compose config
.docker-compose pull
修复了在没有定义图像密钥的情况下对服务发出命令会导致 Compose 崩溃的错误。卷和绑定现在按照在服务定义中声明的顺序安装。
各种各样的
- 完成脚本
zsh
已使用新选项进行更新,并且不再在需要服务名称的地方建议容器名称。
1.22.0
(2018-07-17)
新功能
Compose 格式版本 3.7
引入了规范的 3.7 版本
docker-compose.yml
。此版本需要 Docker Engine 18.06.0 或更高版本。rollback_config
添加了对部署配置的支持init
添加了对服务配置中参数的支持添加了对服务、网络、卷、秘密和配置配置中扩展字段的支持
撰写格式版本 2.4
- 添加了对服务、网络和卷配置中的扩展字段的支持
Bug修复
DOCKER_DEFAULT_PLATFORM
修复了设置时阻止使用某些 Compose 文件进行部署的错误Compose 将不再尝试创建具有无效起始字符的容器或卷
修复了几个导致 Compose 命令无法与使用旧版本 Compose 创建的容器正常工作的错误
修复了当源文件包含可连接网络时启用标志
docker-compose config
的 输出问题--compatibility-mode
gcloud
修复了在 UNIX 上与 Compose 二进制文件一起使用时导致凭证存储无法正常工作的错误修复了尝试在 Windows 上通过非 HTTPS TCP 连接进行操作时导致连接错误的错误
修复了如果 Dockerfile 位于构建上下文的子目录中则导致 Windows 上构建失败的错误
修复了无法在 Windows 上正确解析 UTF-8 BOM 编码的 Compose 文件的问题
修复了使用时处理文件中的双通配符 (
**
) 模式的问题.dockerignore
docker-compose build
.dockercfg
修复了导致旧文件中的身份验证值被忽略的错误docker-compose build
将不再尝试创建以无效字符开头的图像名称
1.21.2
(2018-05-03)
Bug修复
- 修复了 IPAM 配置中的 ip_range 属性无法通过验证的错误
1.21.1
(2018-04-27)
Bug修复
在 1.21.0 中,我们对项目名称的清理方式进行了更改,以便在资源名称中内部使用。当操作名称已更改的现有已部署应用程序时,这会导致问题。此版本可以使用“旧版”命名约定正确检测资源。
修复了使用绝对路径指定上下文中 Dockerfile 尽管有效但会失败的问题。
修复了错误检测 IPAM 选项更改并阻止重新部署的错误。
v2 文件的验证现在可以正确检查 IPAM 配置的结构。
改进了对 Windows 上凭证存储的支持,以包含使用
.exe
.有效扩展列表由PATHEXT
环境变量的内容确定。修复了 Compose 会生成包含某些 v3.2 文件重复元素的无效绑定的错误,从而在部署期间触发引擎级别的错误。
1.21.0
(2018-04-11)
新功能
撰写文件版本 2.4
引入了规范的 2.4 版本
docker-compose.yml
。此版本需要 Docker Engine 17.12.0 或更高版本。platform
添加了对服务定义中参数的支持。如果提供,则在执行服务构建时也会使用该参数。
撰写文件版本 2.2 及更高版本
cpu_rt_period
添加了对服务定义中的和参数的支持cpu_rt_runtime
(仅限 2.x)。
撰写文件版本 2.1 及更高版本
添加了对服务定义中参数的支持
cpu_period
(仅限 2.x)。isolation
添加了对服务构建配置中的参数的支持。此外,如果未定义参数,isolation
服务定义中的参数也可用于构建。build.isolation
(仅限 2.x)
所有格式
--workdir
添加了对中标志的支持docker-compose exec
。--compress
添加了对中标志的支持docker-compose build
。docker-compose pull
现在默认情况下并行执行。您可以使用该标志选择退出--no-parallel
。该--parallel
标志现已弃用,并将在未来版本中删除。项目名称中的破折号和下划线不再被删除。
docker-compose build
现在支持从构建上下文外部使用 Dockerfile。
Bug修复
Compose 现在会检查卷的配置是否与远程卷匹配,如果检测到不匹配,则会出错。
修复了一个错误,该错误导致 Compose 在尝试并行创建多个一次性容器时引发意外错误。
修复了用于为和命令
docker-machine config
生成 TLS 标志时参数解析的错误。exec
run
修复了用空默认值(例如
${VAR:-}
)进行变量替换会打印错误警告的错误。当 Compose 文件的编码与系统的编码不匹配时,提高了恢复能力。鼓励用户尽可能使用 UTF-8。
修复了 Compose 错误地将 Swarm 中的外部覆盖网络识别为不存在的错误,从而中断其他有效操作。
1.20.0
(2018-03-20)
新功能
撰写文件版本 3.6
引入了规范的 3.6 版本
docker-compose.yml
。该版本必须与 Docker Engine 18.02.0 或更高版本一起使用。添加了对
tmpfs.size
卷映射中属性的支持
撰写文件版本 3.2 及更高版本
- 现在可以使用该
--build-arg
选项而无需在中指定服务docker-compose build
撰写文件版本 2.3
device_cgroup_rules
添加了对服务中定义的支持添加了对
tmpfs.size
长格式卷映射中属性的支持现在可以使用该
--build-arg
选项而无需在中指定服务docker-compose build
所有格式
--log-level
向顶级命令添加了一个选项docker-compose
。接受的值为debug
,info
,warning
,error
,critical
。默认日志级别是info
docker-compose run
现在允许用户取消设置容器的入口点文件中找到的代理配置
~/.docker/config.json
现在填充由 Compose 创建的容器的环境和构建参数添加了
--use-aliases
标志docker-compose run
,表明服务配置中声明的网络别名应该用于正在运行的容器将
--include-deps
标志添加到docker-compose pull
docker-compose run
现在在接收时杀死并删除正在运行的容器SIGHUP
docker-compose ps
现在显示容器的健康状态(如果有)--detach
向exec
,run
和up
命令添加了长格式选项
Bug修复
修复了
.dockerignore
处理,特别是关于绝对路径和最后一行优先规则修复了使用 Docker For Mac 连接到引擎时 Compose 会进行代价高昂的 DNS 查找的问题
修复了 1.19.0 中引入的错误,该错误导致 Compose 不遵循默认证书路径
修复了 Compose 在构建上下文的一部分时错误地检查符号链接的目标是否可访问的错误
修复了
.dockerignore
包含空白行的文件导致 Compose 在 Windows 上出错的错误修复了交互和命令无法正确执行
--tls*
和选项的错误--host
run
exec
seccomp:<filepath>
配置中的条目现在security_opt
可以正确地将文件的内容发送到引擎up
和操作的ANSI 输出down
不应再影响错误的行改进了对非 unicode 语言环境的支持
修复了当用户的主目录名称包含非 ASCII 字符时在 Windows 上发生的崩溃
mtime
修复了构建期间由构建上下文中具有负值的文件引起的错误修复了流式传输构建进度时的编码错误
1.19.0
(2018-02-07)
重大变化
- 在 UNIX 平台上,交互式
run
和exec
命令现在docker
默认要求在客户端上安装 CLI。要恢复到以前的行为,用户可以设置COMPOSE_INTERACTIVE_NO_CLI
环境变量。
新功能
撰写文件版本 3.x
- 命令的输出
config
现在应该deploy
以更准确的方式合并多个 Compose 文件中的选项
撰写文件版本 2.3
runtime
添加了对服务定义中选项的支持
撰写文件版本 2.1 及更高版本
${VAR:?err}
添加了对和变量插值语法的支持${VAR?err}
以指示强制变量
撰写文件版本 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 完成现在应该能够更好地区分正在运行、已停止和已暂停的服务
Bug修复
修复了一个错误,
build
当构建上下文包含不可读的文件或 FIFO 对象时,该错误会导致命令报告连接错误。现在将适当处理这些文件类型run
修复了有关交互/会话的各种问题exec
。修复了同时使用环境和 CLI 标志设置 TLS 选项会导致部分配置被忽略的错误
修复了 Compose 忽略 DOCKER_TLS_VERIFY 环境变量的错误
-d
修复了 中和--timeout
标志up
被错误标记为不兼容的错误修复了如果删除与先前容器关联的映像,服务的重新创建将会中断的错误
修复了尝试重新创建关联服务时更新装载目标会破坏 Compose 的错误
修复了以下错误:
tmpfs
在使用版本 3.2 的 Compose 文件中使用扩展语法声明的卷将被错误地创建为匿名卷修复了类型转换错误会打印堆栈跟踪而不是正常退出的错误
修复了一些与 unicode 处理相关的错误
如果依赖服务的配置未更改,则不再与依赖项所有者一起重新创建依赖服务
labels
添加了对 Compose 文件中字段的更好验证。包含标量类型(数字、布尔值)的标签值现在会自动转换为字符串
1.18.0
(2017-12-18)
新功能
撰写文件版本 3.5
推出了 3.5 版规范
docker-compose.yml
。此版本需要 Docker Engine 17.06.0 或更高版本shm_size
添加了对构建配置中参数的支持isolation
添加了对服务定义中参数的支持添加了对网络、秘密和配置定义的自定义名称的支持
撰写文件版本 2.3
extra_hosts
添加了对构建配置的支持添加了对卷条目长语法的支持 ,如之前在 3.2 格式中引入的那样。使用此语法将创建 安装而不是卷。
撰写文件版本 2.1 及更高版本
添加了对服务定义中参数的支持
oom_kill_disable
(仅限 2.x)添加了对网络定义的自定义名称的支持(仅限 2.x)
所有格式
当在非字符串字段中使用时,从环境中插入的值现在将转换为正确的类型。
--label
添加了对in 的支持docker-compose run
--timeout
添加了对in 的支持docker-compose down
--memory
添加了对in 的支持docker-compose build
现在,服务定义中的设置
stop_grace_period
也会设置容器的stop_timeout
Bug修复
修复了 Compose 仍根据旧引擎行为处理服务主机名,导致包含点的主机名被截断的问题
修复了
X-Y:Z
Compose 认为端口语法无效的错误修复了 CLI 日志记录导致出现重复消息和不雅输出的问题
stop_grace_period
修复了使用多个 Compose 文件时导致被忽略的问题docker-compose images
修复了使用未标记图像时导致崩溃的错误修复了有效
${VAR:-}
语法会导致 Compose 出错的错误修复了
env_file
使用 UTF-8 BOM 的条目被错误读取的错误修复了丢失秘密文件会在其位置生成空目录的错误
修复了 CLI 错误处理程序中的字符编码问题
test
添加了健康检查中字段的验证subnet
添加了对IPAM 配置中字段的验证volumes
在服务定义中使用长语法时添加了属性验证CLI 现在明确禁止在中一起使用
-d
和 。--timeout
docker-compose up
1.17.0
(2017-11-01)
新功能
撰写文件版本 3.4
引入了规范的 3.4 版本
docker-compose.yml
。该版本需要与 Docker Engine 17.06.0 或更高版本一起使用。添加了对构建配置中的
cache_from
、network
和选项的支持target
添加了对部分
order
中参数的支持update_config
name
添加了对使用参数在卷定义中设置自定义名称的支持
撰写文件版本 2.3
shm_size
添加了对构建配置中选项的支持
撰写文件版本 2.x
- 添加了对扩展字段 (
x-*
) 的支持。也可用于 v3.4 文件
所有格式
- 添加了新
--no-start
命令up
,允许用户在不启动服务的情况下创建所有资源(网络、卷、容器)。该create
命令已被弃用,取而代之的是这个新选项
Bug修复
extra_hosts
修复了值将被扩展文件覆盖而不是合并在一起的错误修复了 v3.2 文件验证会阻止
consistency
在服务卷定义中使用该字段的错误修复了当期望唯一项目的配置字段包含重复项时会导致崩溃的错误
修复了使用不同模式的挂载覆盖会创建重复条目而不是覆盖原始条目的错误
修复了声明为列表的构建标签无法正确解析的错误
docker-compose config
修复了以下错误:如果文件包含自定义命名的外部卷,则某些版本的输出将无效改进了在 Windows 上使用不受支持的文件版本发出构建命令时的错误处理
修复了同时运行命令时有时会创建具有相同名称的网络的问题
up
。
1.16.0
(2017-08-31)
新功能
撰写文件版本 2.3
引入了规范的 2.3 版本
docker-compose.yml
。该版本需要与 Docker Engine 17.06.0 或更高版本一起使用。target
添加了对构建配置中参数的支持start_period
添加了对健康检查配置中参数的支持
撰写文件版本 2.x
blkio_config
添加了对服务定义中参数的支持添加了对使用参数在卷定义中设置自定义名称的支持
name
(不适用于版本 2.0)
所有格式
- 添加了新的 CLI 标志
--no-ansi
以抑制输出中的 ANSI 控制字符
Bug修复
修复了嵌套
extends
指令未正确解析导致“文件未找到”错误的错误修复了一些
.dockerignore
解析问题修复了启用 TTY 的服务日志打印不正确并导致
MemoryError
异常的问题UnicodeEncodeError
修复了在 Python 3 上打印应用程序日志有时会被异常中断的错误$
输出中的字符现在docker-compose config
已正确转义docker-compose top
修复了运行有时会因未捕获的异常而失败的错误修复了失败时
docker-compose pull
使用该--parallel
标志会返回退出代码的错误0
deploy.resources
修复了密钥未经过验证的问题logging
修复了 的输出中的选项docker-compose config
将设置为null
无效值的问题docker-compose images
修复了当图像来自使用显式端口号的私有存储库时命令的输出docker-compose config
修复了端口定义用作0
已发布端口的值时的输出
1.15.0
(2017-07-26)
新功能
撰写文件版本 2.2
network
添加了对构建配置中的参数的支持。
撰写文件版本 2.1 及更高版本
pid
服务定义中的选项现在支持一个值service:<name>
。storage_opt
添加了对服务定义中参数的支持。此选项不适用于 v3 格式
所有格式
添加
--quiet
标志docker-compose pull
,抑制进度输出CLI 输出的一些改进
Bug修复
通过now
--volume
标志指定的卷docker-compose run
补充服务定义中声明的卷,而不是替换它们修复了使用多个 Compose 文件会取消设置 Compose 文件内定义的比例值的错误。
修复了Compose 不尊重文件
credHelpers
中的条目的问题config.json
修复了在 Python 3 环境中使用多个带有端口声明的 Compose 文件会导致失败的错误
修复了用户环境中存在的某些与代理相关的选项会阻止 Compose 运行的错误
docker-compose config
修复了如果使用原始文件Y
或N
值则输出无效的问题up
修复了阻止在 Windows Engine 上先前创建的堆栈上进行操作的问题。
1.14.0
(2017-06-19)
新功能
撰写文件版本 3.3
- 引入了规范的 3.3 版本
docker-compose.yml
。该版本需要与 Docker Engine 17.06.0 或更高版本一起使用。注意:credential_spec
和configs
键仅适用于 Swarm 服务,并且将被 Compose 忽略
撰写文件版本 2.2
- 在服务定义中添加了以下参数:
cpu_count
,cpu_percent
,cpus
撰写文件版本 2.1
- 添加了对构建标签的支持。 2.2 和 3.3 格式也提供此功能。
所有格式
添加了标志
-u
的简写--user
docker-compose exec
Compose 文件和远程网络之间的标签差异现在将打印警告,而不是阻止重新部署。
Bug修复
docker-compose run
修复了运行命令时服务的依赖项被重新调整为默认比例的错误修复了在提供要删除的服务列表时
docker-compose rm
该标志行为不正常的错误--stop
cache_from
修复了使用多个 Compose 文件时构建部分将被忽略的错误。修复了使用多个 Compose 文件时无法将同一端口绑定到不同 IP 的错误。
.yaml
修复了以下错误:如果覆盖文件具有扩展名,则 Compose 不会拾取覆盖文件修复了 Windows Engine 上的一个错误,该错误导致网络被错误地标记为用于娱乐
修复了服务声明端口会导致某些版本的 Python 3 崩溃的错误
修复了 的输出
docker-compose config
有时包含无效端口定义的错误
1.13.0
(2017-05-02)
重大变化
docker-compose up
现在将服务的缩放重置为其默认值。您可以使用新引入的--scale
选项来指定自定义比例值
新功能
撰写文件版本 2.2
引入了规范的 2.2 版本
docker-compose.yml
。该版本需要与 Docker Engine 1.13.0 或以上版本配合使用init
添加了对服务中定义的支持。scale
添加了对服务中定义的支持。可以使用--scale
中的标志覆盖配置的值docker-compose up
。scale
此文件格式禁用该命令
撰写文件版本 2.x
- 添加了对网络定义部分
options
的支持ipam
Bug修复
-f
修复了通过该选项提供的用于撰写的路径未正确解析的错误修复了
ext_ip::target_port
端口部分中的符号被错误标记为无效的错误修复了使用标志
exec
时命令有时不会将控制权返回到终端的问题-d
config
修复了v3.2 文件的命令输出中缺少机密的错误docker-compose
修复了如果没有可用的互联网连接则会挂起的问题-f
修复了包含通过标志传递的 unicode 字符的路径导致 Compose 崩溃的问题修复了如果 Compose 文件包含外部机密,则 的输出
docker-compose config
将无效的问题修复了在 Python 3 环境中安装 Compose 时使用
--exit-code-from
with会失败的错误up
tmpfs
修复了使用和 的组合重新创建容器volumes
会导致无效配置状态的错误
1.12.0
(2017-04-04)
新功能
撰写文件版本 3.2
推出3.2版
docker-compose.yml
规范添加了对服务部分
cache_from
的支持build
在服务定义中添加了对新扩展端口语法的支持
在服务定义中添加了对新扩展卷语法的支持
撰写文件版本 2.1
pids_limit
添加了对服务中定义的支持
撰写文件版本 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
将影响项目的路径解析使用
--abort-on-container-exit
in时docker-compose up
,导致中止的容器的退出代码将是docker-compose up
命令的退出代码用户现在可以使用环境变量配置他们想要使用哪个路径分隔符来分隔
COMPOSE_FILE
环境值COMPOSE_PATH_SEPARATOR
添加了对端口映射中单个端口的端口范围的支持,例如
8000-8010:80
.
Bug修复
docker-compose run --rm
现在在执行后删除匿名卷,与docker run --rm
.修复了覆盖包含端口列表的文件会导致引发 TypeError 的错误
deploy
修复了输出中缺少密钥的 错误docker-compose config
修复了向上或向下扩展服务有时会重复使用过时容器的错误
docker-compose config
修复了如果项目声明匿名卷,则的输出将无效的错误变量插值现在可以正确出现在
secrets
Compose 文件的部分中该
secrets
部分现在正确显示在输出中docker-compose config
修复了无法针对先前创建的网络检测到对某些网络属性的更改的错误
docker-compose
修复了尝试写入封闭管道时会崩溃的错误修复了与命令行 TLS 标志结合使用时 Compose 无法获取 COMPOSE_TLS_VERSION 值的问题
1.11.2
(2017-02-17)
Bug修复
修复了导致机密配置无法正确加载的错误
docker-compose config
修复了如果配置文件包含机密定义则命令会失败的错误修复了某些 Linux 发行版上的 Compose 会选取并加载过时版本的请求库的问题
docker-compose
修复了尝试构建该服务时构建文件夹内的套接字类型文件会导致崩溃的问题修复了文件
**
中无法识别递归通配符模式的问题。.dockerignore
1.11.1
(2017-02-09)
Bug修复
- 修复了 Compose 解析器无法将 3.1 文件格式识别为有效的错误
1.11.0
(2017-02-08)
新功能
撰写文件版本 3.1
- 引入了规范的 3.1 版本
docker-compose.yml
。此版本需要 Docker Engine 1.13.0 或更高版本。它引入了对秘密的支持。请参阅文档以获取更多信息
撰写文件版本 2.0 及更高版本
- 引入了
docker-compose top
显示为 Compose 管理的不同服务运行的进程的命令。
Bug修复
修复了扩展定义运行状况检查字典的服务会导致
docker-compose
错误的错误。pid
修复了使用多个 Compose 文件时服务定义中的条目被忽略的问题。
1.10.1
(2017-02-01)
Bug修复
修复了旧版本 docker-py 包的存在会导致运行 Compose 时意外崩溃的问题
修复了在项目中使用多个撰写文件时健康检查依赖项会丢失的问题
修复了一些导致命令输出
config
无效的问题修复了向 v3 Compose 文件添加卷标签会导致错误的问题
修复了 Windows 上包含 unicode 字符的构建上下文路径编码不正确的问题
修复了当容器停止或重新启动时 Compose 在流日志时偶尔崩溃的错误
1.10.0
(2017-01-18)
新功能
撰写文件版本 3.0
- 推出了 3.0 版规范
docker-compose.yml
。该版本需要与 Docker Engine 1.13 或更高版本一起使用,并且是专门为使用命令而设计的docker stack
。
撰写文件版本 2.1 及更高版本
healthcheck
现在可以使用参数在服务定义中完成运行状况检查配置现在可以将容器依赖项设置为在使用 声明时等待积极的运行状况检查
depends_on
。请参阅文档以了解更新的语法。 注意:此功能不会移植到版本 3 Compose 文件中。sysctls
添加了对服务定义中参数的支持userns_mode
添加了对服务定义中参数的支持Compose 现在向其创建的网络和卷添加识别标签
撰写文件版本 2.0 及更高版本
stop_grace_period
添加了对服务定义中的选项的支持。
Bug修复
彩色输出现在可以在 Windows 上正常工作。
修复了 Windows 上 docker-compose run 无法在交互模式下设置链接别名的错误。
由 Compose 创建的网络现在始终可附加(Compose 文件 v2.1 及更高版本)。
修复了错误值
COMPOSE_CONVERT_WINDOWS_PATHS
(0
、、false
空值)被解释为 true 的错误。修复了某些 .dockerignore 模式中的正斜杠在 Windows 上无法正确解析的错误
1.9.0
(2016-11-16)
重大变化
- 在 Windows 上将 Compose 与 Docker Toolbox/Machine 结合使用时,卷路径默认不再从 -style 转换
C:\Users
。/c/Users
要重新启用此转换以使您的卷继续工作,请设置环境变量COMPOSE_CONVERT_WINDOWS_PATHS=1
。 Docker for Windows 用户不受影响,无需设置该变量。
新功能
Windows 平台现在支持
docker-compose run
和的交互模式。系统上必须存在二进制文件才能使此功能发挥作用docker-compose exec
。docker
引入了规范的 2.1 版本
docker-compose.yml
。该版本需要与 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 现在默认使用
npipe
Windows 上的协议。如果值不冲突,覆盖
logging
配置现在将正确合并映射。options
driver
Bug修复
npipe
修复了与Windows 上的协议支持相关的多个错误。修复了在 Windows Server 上使用 Docker 时 Windows 路径转换不正确的问题。
修复了空
restart
值有时会导致引发异常的错误。修复了包含 unicode 字符的服务日志有时会导致错误的问题。
修复了环境变量中的 unicode 值在检索时有时会引发 unicode 异常的错误。
修复了 Compose 错误地检测到覆盖网络配置不匹配的问题。
1.8.1
(2016-09-22)
Bug修复
修复了使用凭证存储的用户无法访问其私有映像的错误。
修复了使用身份令牌进行身份验证的用户无法访问其私有图像的错误。
HttpHeaders
修复了在尝试构建映像时 docker 配置文件中的条目会导致 Compose 崩溃的错误。修复了与卷绑定声明中 Windows 路径处理相关的一些错误。
修复了尝试从引擎读取流响应时 Compose 有时会崩溃的错误。
修复了流容器日志时遇到 API 错误时 Compose 崩溃的问题。
修复了 Compose 错误地尝试从引擎 API 未处理的驱动程序输出日志的问题。
docker-machine config
修复了Compose 无法正确解释命令选项的错误。修复了同时运行大量服务时与 Docker 引擎的连接有时会失败的错误。
修复了运行命令时 Compose 有时会打印误导性建议消息的问题
bundle
。修复了在项目初始化阶段 Compose 无法正确处理连接错误的错误。
修复了遇到连接超时时会出现误导性错误的错误。
1.8.0
(2016-06-14)
重大变化
正如 1.7.0 中所宣布的,现在删除默认
docker-compose rm
创建的容器。docker-compose run
entrypoint
现在,对服务的设置会清空在映像上设置的任何默认命令(即CMD
用于构建它的 Dockerfile 中的任何指令)。这使得它与--entrypoint
标志 to一致docker run
。
新功能
添加了一个命令,用于构建供Docker 1.12 中的新Docker Stack
docker-compose bundle
命令使用的捆绑文件。添加了
docker-compose push
将服务映像推送到注册表的命令。Compose 现在支持使用环境变量指定自定义 TLS 版本以与 Docker 引擎交互
COMPOSE_TLS_VERSION
。
Bug修复
修复了当项目根目录是目录时,Compose 会错误地尝试读取
.env
项目根目录的错误。docker-compose run -e VAR
现在VAR
从外壳传递到容器,就像docker run -e VAR
.改进了多个服务子项涉及多个撰写文件时的配置合并。
修复了包含 Windows 驱动器的卷映射有时会被错误解析的错误。
修复了 Windows 环境下主机根目录卷映射解析错误的问题。
docker-compose config
修复了如果指定外部网络将输出无效 Compose 文件的错误。'None'
修复了未设置的 buildargs 将被分配一个包含而不是预期的空值的字符串的问题。修复了 Windows 上在接收输入之前不会显示是/否提示的错误。
docker-compose exec
修复了在Windows 上尝试不使用该-d
选项会退出并显示堆栈跟踪的错误。暂时这仍然会失败,但应该可以优雅地完成。修复了错误期间
docker-compose up
会在进程结束时显示不相关的堆栈跟踪的错误。docker-compose create
并docker-compose start
在出现问题时显示更多描述性错误消息。
1.7.1
(2016-05-04)
Bug修复
修复了 v1 文件的输出
docker-compose config
是无效配置文件的错误。docker-compose config
修复了不检查链接有效性的错误。docker-compose help
修复了无法按预期输出可用命令和通用选项列表的问题。docker-compose logs
修复了使用时按服务进行过滤不适用于新创建的服务的问题。修复了在 Python 3 中使用 Compose 时有时会在启动阶段重新创建未更改的服务的错误。
修复了在 up 阶段遇到的 API 错误不会被 Compose 识别为失败状态的问题。
修复了由于非 Windows 平台上未定义的异常名称而导致 Compose 引发 NameError 的错误。
docker-py
修复了有时会与 Compose 一起安装错误版本的错误。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 中的默认行为。添加了对客户端使用的所有相同 TLS 配置标志的支持
docker
:--tls
、--tlscert
、--tlskey
等。撰写文件现在支持
tmpfs
和shm_size
选项。将
--workdir
标志添加到docker-compose run
docker-compose logs
现在显示启动后创建的新容器的日志。环境
COMPOSE_FILE
变量现在可以包含多个文件,由主机系统的标准路径分隔符分隔(:
在 Mac/Linux 上、;
在 Windows 上)。ipv4_address
现在,您可以在使用和选项将服务连接到网络时指定静态 IP 地址ipv6_address
。在命令中添加了
--follow
、--timestamp
、 和--tail
标志docker-compose logs
。docker-compose up
,docker-compose start
现在将在可能的情况下并行启动容器。docker-compose stop
现在以反向依赖顺序停止容器,而不是一次性停止所有容器。添加
--build
标志以docker-compose up
强制其构建新图像。现在,如果在不使用该标志时自动构建图像,它会显示警告。添加了
docker-compose exec
在正在运行的容器中执行进程的命令。
Bug修复
docker-compose down
现在删除由 . 创建的容器docker-compose run
。up
当使用 tty期间发生超时时,会显示更合适的错误。docker-compose down
修复了如果某些资源已被删除则它将中止的错误。修复了更改网络别名不会触发重新创建服务的错误。
修复了在新卷已存在时打印有关创建新卷的日志消息的错误。
修复了中断
up
并不总是关闭容器的错误。log_opt
修复了以 v1 Compose 文件格式扩展服务时和log_driver
未正确继承的错误。修复了构建参数为空值会导致文件验证失败的错误。
1.6.2
(2016-02-23)
- 修复了连接到启用 TLS 的 Docker 引擎失败并出现证书验证错误的错误。
1.6.1
(2016-02-23)
Bug修复
修复了多次重新创建容器会导致新容器在没有以前的卷的情况下启动的错误。
修复了 Compose 会将未设置的环境变量的值设置为空字符串,而不是没有值的键的错误。
当 Compose 需要更新版本的 Docker API 时,提供更好的错误消息。
添加缺少的配置字段
network.aliases
,该字段允许为服务设置网络范围的别名。run
修复了无法启动 中列出的服务的错误depends_on
。修复了使用扩展或多个 Compose 文件时未合并的
networks
错误。network_mode
修复了服务别名的错误,其中短容器 ID 别名仅包含 10 个字符,而不是以前版本中使用的 12 个字符。
添加了创建新命名卷时丢失的日志消息。
修复了使用多个 Compose 文件
build.args
时未合并的错误。extends
修复了使用空值或不正确的类型而不是映射时配置验证的一些错误。
build
修复了没有 的部分context
会显示堆栈跟踪而不是有用的验证消息的错误。当服务使用匿名容器卷时,仅通过设置与服务容器的前一个实例的容器关联性来提高与 swarm 的兼容性。以前,关联性始终在所有容器上设置。
driver_opts
修复了如果使用数字而不是字符串某些验证会导致错误的问题。run.sh
对 Compose 容器安装选项使用的脚本进行了一些改进。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
如果您使用新的文件格式,您现在可以指定 a
build
和key。将构建图像并使用您指定的名称对其进行标记,同时将尝试拉取它。image
docker-compose build
docker-compose pull
有一个新
events
命令用于监视应用程序中的容器事件,非常类似于docker events
.这是在 Compose 之上构建工具的一个很好的原语,用于在发生特定事件(例如容器启动和停止)时执行操作。有一个新
depends_on
选项用于指定服务之间的依赖关系。这会强制执行启动顺序,并确保当您在docker-compose up SERVICE
具有依赖项的服务上运行时,这些服务也会启动。
新功能
添加了一个新命令
config
,用于在插入变量、解析相对路径以及合并多个文件和extends
.添加了一个新命令
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
标志。
Bug修复
修复了导致无法在现场使用一系列端口的验证错误
expose
。entrypoint
修复了一个验证错误,如果数组包含重复条目,该错误会阻止在字段中使用数组。ulimits
修复了与 一起使用时导致被忽略的错误extends
。修复了阻止 ipv6 地址出现的错误
extra_hosts
。extends
修复了从多个 Compose 文件包含时导致被忽略的错误。修复了在 Compose 文件中定义容器卷时出现的错误警告。
up
修复了阻止和 强制关闭行为的错误logs
。None
修复了使用默认网络驱动程序时导致打印为网络驱动程序名称的错误。修复了使用字符串形式
dns
ordns_search
会导致错误的错误。修复了容器在重新启动状态时报告为“Up”的错误。
修复了 DOCKER_CERT_PATH 未正确设置时出现的令人困惑的错误消息。
修复了如果使用非标准日志记录驱动程序(或根本没有),附加到容器将失败的错误。
1.5.2
(2015-12-03)
environment
修复了一个错误,该错误破坏了和env_file
with 的使用extends
,并导致没有值的环境键具有值None
,而不是来自主机环境的值。修复了 1.5.1 中的一个回归问题,该问题导致在重新创建容器时错误地引发有关卷的警告。
Dockerfile
修复了阻止构建使用的错误ADD <url>
docker-compose restart
修复了阻止其启动已停止容器的错误。修复了 SIGTERM 和 SIGINT 的处理以正确停止容器
添加对使用 url 作为值的支持
build
expose
改进了选项的验证
1.5.1
(2015-11-12)
将
--force-rm
选项添加到build
.ulimit
在 Compose 文件中添加服务选项。修复了如果服务从 using 更改为 using
up
时会出现“需要构建服务”错误的错误。image
build
修复了可能导致某些终端上并行操作输出不正确的错误。
volumes_from
修复了当 a 的模式更改时阻止重新创建容器的错误。修复了 1.5.0 中非 utf-8 unicode 字符会导致 崩溃的
up
问题logs
。修复了 1.5.0 中的一个回归问题:当命令由于与 docker 守护进程通信的 HTTP 超时而失败时,Compose 将使用成功退出状态代码。
修复了 1.5.0 中的回归,该回归
name
被接受为有效服务选项,该选项将覆盖服务的实际名称。使用
--x-networking
Compose 时不再将主机名设置为容器名称。使用 Compose 时
--x-networking
,如果至少有一个容器正在使用该网络,则只会创建默认网络。up
当在或期间打印日志时logs
,请在每行之后刷新输出缓冲区,以防止缓冲问题隐藏日志。如果正在创建容器的依赖项之一,请重新创建容器。以前,仅当容器的依赖项已存在时才会重新创建容器,但也会重新创建容器。
volume
当Compose 文件中的a 被前一个容器中的容器卷忽略和屏蔽时,添加警告。pull
改进在没有 tty 的情况下运行时的输出。使用多个 Compose 文件时,请在尝试将它们合并在一起之前验证每个文件。以前无效的文件会导致无用的错误。
允许在服务选项中的键中使用破折号
environment
。通过将文件名作为错误消息的一部分来改进验证错误消息。
1.5.0
(2015-11-03)
重大变化
随着 Compose 文件中引入变量替换支持,任何在or字段中使用环境变量 ($VAR
或${VAR}
)的 Compose 文件都将被破坏。command:
entrypoint:
以前,这些值是使用容器环境中的值在容器内进行插值的。在 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
可以指定多个撰写文件,从而允许您覆盖默认撰写文件中的设置。 有关更多详细信息,请参阅 https://github.com/docker/compose/blob/8cc8e61/docs/reference/docker-compose.md 。
现在,当文件包含无效配置时,Compose 会生成更好的错误消息。
up
现在等待所有服务退出后再关闭,而不是在一个容器退出后立即关闭。可以使用该标志启用对新 docker 网络系统的实验支持
--x-networking
。在这里阅读更多信息: 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 继续,而不是中止。docker-compose.yml
您现在可以使用该选项指定 IPC 命名空间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 映像安装和运行。这是一个实验性功能。
Bug修复
log_driver
Docker 守护程序支持的选项的所有值现在都受 Compose 支持。docker-compose build
现在可以在 Swarm 集群上成功运行。
1.4.2
(2015-09-22)
- 修复了 1.4.1 版本中的一个回归问题,该问题可能会导致
docker-compose up
无法-d
选择立即退出。
1.4.1
(2015-09-10)
Bug修复
- 某些配置更改(特别是对
links
、volumes_from
和 的 更改net
)未正确触发容器重新创建作为 的一部分docker-compose up
。 docker-compose up <service>
显示所有服务的日志,而不仅仅是指定的服务。- 具有自定义容器名称的容器显示在日志中,而
service_number
不是其自定义容器名称。 - 扩展服务时,有时即使配置没有更改,也会重新创建容器。
1.4.0
(2015-08-04)
默认情况下,
docker-compose up
现在只为自创建以来配置已更改的服务重新创建容器。这将为许多应用程序带来显着的加速。--x-smart-recreate
Compose 1.3.0 中引入此功能的实验性标志已被删除,并且--force-recreate
添加了一个标志,供您在需要重新创建所有内容时使用。现在,Compose 的几个命令 -
scale
、stop
和- 对多个容器并行执行操作,而不是按顺序执行,这将在较大的应用程序上运行得更快。kill
rm
您现在可以使用 为服务容器指定自定义名称
container_name
。由于 Docker 容器名称必须是唯一的,这意味着您无法将服务扩展到一个容器之外。file
使用时您不再需要指定选项extends
- 它将默认为当前文件。服务名称现在可以包含点、破折号和下划线。
-
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
.volume_driver
您现在可以使用中的选项指定自定义卷驱动程序docker-compose.yml
,非常类似于docker run --volume-driver
。修复了 Compose 无法从提供普通(不安全)HTTP 的私有注册表中提取图像的错误。该
--allow-insecure-ssl
标志以前用于解决此问题,现已被弃用,现在没有任何作用。修复了一个错误,
docker-compose build
如果构建依赖于私有 Hub 映像或来自私有注册表的映像,该错误将会失败。修复了如果存在 Docker 守护进程尚未完成删除的容器,Compose 会崩溃的错误。
docker-compose.yml
修复了两个错误:如果使用尾部斜杠指定了卷路径,Compose 有时会因“重复绑定安装”错误而失败,或者无法将卷附加到容器。
感谢@mnowster、@dnephin、@ekristen、@funkyfuture、@jeffk 和@lukemarsden!
1.3.3
(2015-07-15)
回归修复
- 当优雅地停止容器时,Compose 将超时设置为 0,每次都会有效地强制执行 SIGKILL。
- Compose 有时会崩溃,具体取决于从 Docker API 返回的容器数据的格式。
1.3.2
(2015-07-14)
Bug修复
docker-compose run
当在旧版本的 Compose 上运行创建一次性容器时,docker-compose run
会因名称冲突而失败。如果您周围有此类剩余容器,Compose 现在会显示错误,并告诉您如何删除它们。- Compose 未读取在新位置创建的 Docker 身份验证配置文件,
~/docker/config.json
因此针对私有注册表的身份验证将失败。 - 当容器附加了伪 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)
Bug修复
docker-compose build
在构建之前总是会尝试拉取基础镜像。docker-compose help migrate-to-labels
因错误而失败。- 如果未指定网络模式,Compose 会将其设置为“桥接”,而不是允许 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
,允许您指定要与 一起使用的备用 Dockerfilebuild
。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
,让您指定 日志驱动程序。
Bug修复
- 的输出
docker-compose run
有时会被截断,尤其是在 Jenkins 下运行时。 - 在 中更改卷配置后,服务的卷有时不会更新
docker-compose.yml
。 - 针对第三方注册表进行身份验证有时会失败。
docker-compose run --rm
如果服务restart
制定了策略,则将无法删除容器。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
.docker-compose up
现在,在 Swarm 集群中使用 Compose 时的重复调用可以可靠地工作。传递到的目录
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。这对您有几个影响:
- 您键入的命令是 now
docker-compose
,而不是fig
. - 您应该将 Fig.yml 重命名为 docker-compose.yml。
- 如果您通过 PyPI 安装,则软件包现在为
docker-compose
,因此请使用 来安装pip install docker-compose
。
除此之外,此版本中还有很多新内容:
我们做了一些小更改,以确保 Compose 能够与 Docker 的新集群工具 Swarm 配合使用 ( https://github.com/docker/swarm)。最终,您将能够将 Compose 指向 Swarm 集群而不是独立的 Docker 主机,并且它将在集群上运行您的容器,而无需您进行额外的工作。由于 Swarm 仍处于开发阶段,集成还很粗糙,并且许多 Compose 功能还无法运行。
docker-compose run
现在有一个--service-ports
用于公开给定服务上的端口的标志。例如,这对于使用交互式调试器运行 Web 应用程序非常有用。external_links
现在,您可以使用docker-compose.yml 中的选项链接到应用程序外部的容器。您现在可以
docker-compose up
使用该选项阻止自动构建图像--no-build
。这将减少 API 调用并运行得更快。如果您在使用 key 时未指定标签
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_PORT_5432_TCP_ADDR
和。DB_PORT_5432_TCP_PORT
db
5432
卷定义现在支持
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出错的fig.yml选项。 - 修复了 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 会启动链接fig up
。例如,如果您有一个
web
服务依赖于某个db
服务,fig run web ...
则会启动该db
服务。现在可以从 Fig 运行的环境中解析环境变量。只需将其指定为您的空白变量
fig.yml
,如果设置了,它将被解析:environment: RACK_ENV: development SESSION_SECRET:
volumes_from
现在支持fig.yml
.将安装指定服务和容器中的所有卷:volumes_from: - service_name - container_name
现在可以在以下位置指定主机地址
ports
:ports: - "0.0.0.0:8000:8000" - "127.0.0.1:8001:8001"
现在支持
net
和选项。workdir
fig.yml
该
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
链接回自己的服务 - 流式输出时正确处理 UTF-8
fig build/run/up
(感谢 @mauvm 和 @shanejonas!) - 错误消息改进
0.3.2
(2014-03-05)
- 添加了一个
--rm
选项fig run
。 (谢谢@marksteve!) - 添加了一个
expose
选项fig.yml
。
0.3.1
(2014-03-04)
- 添加了贡献说明。 (谢谢@kvz!)
- 修复了
fig rm
抛出错误。 fig ps
修复了Docker 0.8.1 上存在没有命令的容器时的错误。
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
不打印日志输出的问题 - 以与启动相反的顺序停止容器
- 修复缩放命令不绑定端口的问题
感谢@barnybug 和@dustinlacewell 在此版本中所做的工作。
0.2.1
(2014-02-04)
- 对错误报告的一般改进(#77、#79)
0.2.0
(2014-01-31)
- 将服务链接到自身,以便运行命令可以访问正在运行的服务。 (#67)
- 更好的文档。
- 使服务依赖解析更加可靠。 (#48)
- 使用扩展加载 Fig 配置
.yaml
。 (#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)
- 添加
-T
选项以fig run
禁用伪 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)
- 改进文档
tcp://localdocker:4243
除了 之外,还尝试连接到 Docker和 UNIX 套接字localhost
。- 改善
fig up
行为 - 添加确认提示
fig rm
- 添加
fig build
命令
0.0.1
(2013-12-20)
初始发行。