Docker Compose 发行说明
有关更多详细信息,请参阅 Compose 存储库中的发行说明。
2.31.0
2024-11-28更新
- 依赖项升级:将 compose-go 升级到 v2.4.5
- 依赖项升级:将 docker engine 和 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 engine 和 cli 升级到 v27.3.1
错误修复和增强功能
- 引入服务挂钩支持。
- 添加 Alpha
generate
命令。 - 添加
export
命令。 - 添加了对使用 CDI 设备请求的支持
devices
在 Compose 文件中。 - 修复了很多错误。
2.29.7
2024-09-20错误修复和增强功能
- 修复了使用挂载 API 进行绑定挂载时的回归。
2.29.6
2024-09-19更新
- 依赖项升级:将 docker engine 和 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 engine 和 cli 升级到 v27.3.0-rc.1
错误修复和增强功能
- 修复了重新启动 diverged 依赖项时服务不停止的问题。
- 固定电位
nil
OTEL 客户端上的指针错误。
2.29.3
2024-09-12更新
- 依赖项升级:将 compose-go 升级到 v2.2.0
- 依赖项升级:将 docker engine 和 cli 升级到 v27.2.1
错误修复和增强功能
- bind mount 和
rebuild
现在允许使用watch
. - 修复了在以下情况下重新创建容器的错误
--no-deps
用于up
. - 修复了在重新附加容器时不关闭流的错误。
- 使用
-V
或--renew-anon-volumes
.
2.29.2
2024-08-16更新
- 依赖项升级:将 compose-go 升级到 v2.1.6
- 依赖项升级:将 docker engine 和 cli 升级到 v27.1.2
- 依赖项升级:将 buildx 升级到 v0.16.2
- 依赖项升级:将 buildkit 升级到 v0.15.2
- 依赖项升级:将 golang 升级到 v1.21.12
- 依赖项升级:将 sys 升级到 v0.22.0
- 依赖项升级:bump flock 到 v0.12.1
错误修复和增强功能
- 修复了
docker compose kill
用法。 - 修复了 redundant condition from
toAPIBuildOptions
在 build.go 中。 - 修复了初始 Watch
sync
在 Compose 重启后,引入了x-initSync
. - 修复了在
sync-restart
观看行动。
2.29.1
2024-07-23更新
- 依赖项升级:将 compose-go 升级到 v2.1.5。
- 依赖项升级:将 docker engine 和 cli 升级到 v27.1.0。
错误修复和增强功能
- 使用更多字段增强 JSON 进度事件。
2.29.0
2024-07-17更新
- 依赖项升级:将 compose-go 升级到 v2.1.4
- 依赖项升级:将 docker engine 和 cli 升级到 v27.0.3
- 依赖项升级:将 buildx 升级到 0.16.0
- 依赖项升级:将 buildkit 升级到 0.15.0
- 依赖项升级:将 containerd 升级到 1.7.19
错误修复和增强功能
- 添加了 JSON 流进度编写器。
- 添加了
--prune
flag 添加到docker compose watch
命令。 - 现在,在选择服务后,将排除不必要的资源。
- 没有值的空变量在容器中未设置。
2.28.1
2024-06-24错误修复和增强功能
- 修复了进度显示,中断
v2.28.0
,当 TTY 模式可用时。
2.28.0
2024-06-21更新
- 依赖项升级:将 compose-go 升级到 v2.1.3
- 依赖项升级:将 docker engine 和 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 engine 和 cli 升级到 v26.1.4
- 依赖项升级:将 buildx 升级到 0.15.0
- 依赖项升级:将 buildkit 升级到 0.14.0
- 依赖项升级:将 containerd 升级到 1.7.18
错误修复和增强功能
- 添加了一个
--environment
flag 添加到config
命令 - 修复了导致
watch
进程在用作up
命令 - 固定使用
COMPOSE_PROFILES
在.env
文件
2.27.1
2024-05-24更新
- 依赖项升级:将 compose-go 升级到 v2.1.1
- 依赖项升级:将 docker engine 和 cli 升级到 v26.1.3
- 依赖项升级:将 buildx 升级到 0.14.1
- 依赖项升级:将 containerd 升级到 1.7.17
错误修复和增强功能
- 在 CLI 中添加了导航菜单,您可以在其中在 Docker Desktop 中打开 Compose 文件
- 添加了
--menu
标志输入docker compose up
- 修复了
--resolve-image-digests
用于--no-interpolate
- 您现在可以使用本地的
.env
要覆盖的文件COMPOSE_*
环境变量
2.27.0
2024-04-24更新
- 依赖项升级:将 golang 升级到 1.21.9
- 依赖项升级:将 compose-go 升级到 v2.1.0
- 依赖项升级:将 docker engine 和 cli 升级到 v26.1.0
错误修复和增强功能
- 介绍
--abort-on-container-failure
旗 - 介绍
--all-resources
不排除服务未使用的资源 - 引入了对
build.entitlements
- 修复了一个错误,因此 Docker Compose 现在会在
docker compose down/stop -p
运行 - 修复了对
--flag=value
兼容模式下的语法
2.26.1
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
behaviour 直到--no-interpolate
已设置 - 修复了服务名称 shell 完成的问题
- 添加
--watch
flag 设置为up
命令
2.24.7
2024-03-06更新
- 依赖项升级:将 golang 升级到 1.21.8
- 依赖项升级:将 compose-go 升级到 2.0.0-rc8
- 依赖项升级:将 docker 升级到 v24.0.4
错误修复和增强功能
- Compose 现在可确保网络的稳定优先级排序顺序
- 修复了默认值中带有大括号 (e.g. JSON) 的插值
- 修复了非唯一身份验证
container_name
值 - 修复了
develop.watch
- 修复了 的环境加载
include
- 修复了合并标签/网络时的 panic 问题
- 添加了对
--no-path-resolution
使用include
- 修复了缺少项目名称的错误
- 固定
--no-interpolate
标记config
- 添加了 Windows 上“监视”模式文件锁定问题的解决方法
- 修复了重复的退出代码状态消息
- Compose 现在遵循
COMPOSE_REMOVE_ORPHANS
upperup
2.24.6
2024-02-15更新
- 依赖项升级:将 cli 升级到 25.0.3
- 依赖项升级:将 compose-go 升级到 2.0.0-rc.7
错误修复和增强功能
- 修复了
.env
通过COMPOSE_FILE
变量 - 一致
ps --status=exited
behaviour 替换为 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 中引入的适用于 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
- 删除
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 回退支持。
- Build now 不需要解析环境。
- 现在,Compose 会在 SIGINT/SIGTERM 信号上发出
compose up
. - 修复了在以下情况下暴露服务端口的日志
--verbose
. - 修复了内联和定义的配置,这些配置将挂载在 /<id> 下,直到设置了显式目标。
- 固定组合
--pull always --no-build
. - 修复了日志打印机中的争用条件。
- 固定
docker compose up
取消命令上下文时 teardown。
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
output log (仅当至少有一个服务要构建时)。
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 将无法启动。
- 修复了对 stop/kill stack 的 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
错误修复和增强功能
- 添加了对 publish 命令的试运行支持
- 添加
COMPOSE_ENV_FILES
env 变量传递 env 文件列表 - 添加
sync+restart
action 设置为compose watch
- 一致
compose ps
output 和 introduced--no-trunc
保持之前的行为 - 修复了
up
和configure
- 在以下情况下启用配置文件
down
使用显式服务名称运行 - 修复了提供的 pull policy 无效的问题
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
issue时,声明的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
output 与 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
同步。 - 在第一行构建中添加了 builder 的名称。
- 改进了 shell 补全
--project-directory
和--profile
. - 修复了代理配置未传递到旧版生成器的构建问题。
- 删除了成功存在选项依赖关系时不必要的警告。
2.20.2
2023-07-19错误修复和增强功能
- 添加了对
depends_on.required
属性。 - 修复了 build 尝试推送未命名服务镜像的问题。
- 修复了一个错误,该错误意味着未检查 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
命令。 - 添加了对
include
和attach
属性。 - 修复了初始化 CLI 客户端时的 DryRun 模式问题。
- 修复了当服务具有多个网络时随机缺少网络的错误。
- 修复了 Secrets 文件权限值,以符合 Compose 规范。
- 修复了有关
no-deps
标志未应用。 - 修复了一些源代码注释。
- 修复了
--index
未设置为 select。 - 修复了等待 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
使用服务镜像运行维护命令。 - 修复了检测 swarm 模式期间的错误。
- 修复了通过
COMPOSE_PROJECT_NAME
环境变量。 - 在
down
命令。 - 修复了
up
不应静默忽略 missing 的命令depends_on
服务业。 - 将正向信号与容器行为与
docker run
一。 - Compose 现在可以检测网络名称冲突。
- 修复了有关现有卷的警告消息中的拼写错误。
- Compose 现在会检测在
compose -p x logs -f
命令。 - 修复了
compose
用作项目名称。 - 修复了
watch
命令。 - 删除了重新启动或停止服务时的默认超时 10 秒。
- 修复了
watch
默认应用 “rebuild” 策略。 - 修复了一个争用条件,即在退出时等待容器。
- 添加了一条警告,告诉用户 uid,gid,mode 未实现
build.secrets
. - 修复了
watch
它正在监视整个构建上下文,而不仅仅是配置的路径。 - 现在,Compose 会按创建日期对容器进行排序,以便先缩小旧容器的规模。
- 修复了 Windows 环境的文档生成任务中的一个错误。
- 更新了文档以反映 Dry Run 模式功能已完成。
- 改进了网络标签不匹配的诊断消息。
- 修复了渲染
Building
部分。 - 修复了代码覆盖率指标中的一个错误。
- 新增 OTEL 初始化。
- 添加了一个 GitHub作,用于使用 Compose 边缘版本触发 Docker Desktop e2e 测试。
- 向 dependabot 添加了更多忽略规则。
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
子命令 - 介绍
--no-path-resolution
跳过要解析的相对路径 - 介绍
COMPOSE_ANSI
要定义--ansi
默认值 - 介绍
COMPOSE_STATUS_STDOUT
获取发送到 stdout 的状态消息 - 修复了 BuildKit progressui 集成
- 修复了一个 bug 以停止阻止事件循环收集日志
- 恢复了对
--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
错误修复和增强功能
- 修复了包含大写字符或
.
在名称中。修复 compose #10405
2.17.1
2023-03-24更新
- 依赖项升级:将 buildkit 升级到 v0.11.5
- 依赖项升级:将 compose-go 升级到 v1.13.1
- 依赖项升级:将 golang 升级到 1.20.2
错误修复和增强功能
- 修复了 panic on
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
upperup
命令。修复 compose #10269 - 䍬
compose service --hash
output 按 Service Name 排序。拉取请求撰写 #10278 - Compose 现在会呈现一个紧凑的 TUI 进度报告,以监控层下载。拉取请求撰写 #10281
- 介绍
restart
为depends_on
.修复 compose #10284 - 添加了对
NO_COLOR
env var 的 var 中。修复 compose #10340 - Progress writer 现在使用
dockercli.Err
流。修复 compose #10366 - 添加了对
additional_contexts
在build
service 配置。修复了 compose #9461 compose #9961 - 在 中添加了文件删除/重命名处理
watch
模式。拉取请求撰写 #10386 - 引入了
ignore
属性watch
模式。拉取请求撰写 #10385 - Compose 现在使用进度编写器来显示副本状态。拉取请求撰写 #10387
- 更新了
-p
/--project-name
旗。修复了 docs #16915、compose-spec #311 - 引入了
replace
label 来跟踪服务的新旧容器之间的关系。修复 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 集合时出现的问题。拉取请求撰写 #10372
- 使用配置的名称分隔符定义一次性容器名称。修复 compose #10354
- 修复了重新创建容器时的并发映射读/写问题。修复 compose #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
命令。修复了 compose #9718 - 缩短了端子太小时中的 TTY 输出。修复 compose #9962
- 添加
remove-orphans
功能运行。修复了 compose #9718 - 引入了实验性
watch
命令。拉取请求撰写 #10163 - Compose 现在允许使用
-t
.修复 compose #10161 - 引入了实验性
dry-run
命令。拉取请求撰写 #10173 - 更新了文档以说明配置并行度的方法。拉取请求撰写 #10198
- 对齐
logs
命令与 docker CLI 通过别名-n
为--tail
.修复 compose #10199 - 添加了对
docker compose build --push
.拉取请求撰写 #10148 - 添加
--scale
到compose create
命令。修复 compose #10208 - 重 命名
convert
自config
以与 Compose V1 用户体验保持一致。拉取请求 compose#10214 - 现在,Compose 会将代理配置作为 build args 传递。修复 compose #8797
- 修复了 中的解析问题
compose up
忽略不是由 Compose 创建的容器。修复 compose #10162 - 修复了日志格式化程序初始化中的 goroutine 泄漏。修复 compose #10157
- 修复了当所有正在运行的容器都已停止时,撰写日志不退出的问题。拉取请求撰写 #10181
- 修复了文档以反映
docker compose ps
正在与docker ps
.拉取请求撰写 #10195 - 修复了找不到远程 Buildx 驱动程序的问题。修复 compose #9893
- 改进了重新创建服务容器时的日志记录。拉取请求撰写 #10236
- 修复了一个问题,即 Compose 现在只等待与等待条件相关的容器。修复 compose #10200
- Compose 现在会阻止在 nil map 中分配 to entry。修复 compose #10244
- 为 Cucumber 测试添加了专用的 GitHub Action 工作流程。拉取请求撰写 #10165
- 清理了在压缩日志模式下切换时的 TUI 行。修复 compose #10201
- 添加了 Tilt 观察程序,用于检测监视模式下的代码更改。拉取请求撰写 #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
- 修复了未设置过滤器时的过滤问题。修复路线图 #418
- 修复了构建步骤期间的并发映射写入问题。拉取请求撰写 #10151
- 修复了 stdin 不是终端时的问题。修复 compose #9739
2.15.0
2023-01-05更新
- 依赖项升级:将 compose-go 升级到 v1.8.1
- 依赖项升级:将 cli-docs-tool 升级到 0.5.1
错误修复和增强功能
- 添加了对
privileged
属性中的service.build
部分。拉取请求撰写 #10112 - 介绍
--ignore-buildable
以忽略拉取时可构建的镜像。修复 compose #8805 - 介绍
--no-attach
以忽略某些服务输出。修复 compose #8546 - 修复了
logs
什么时候driver:none
已设置。修复 compose #9030 - Compose 现在依赖于 dockerCLI.streams。拉取请求撰写 #10082
- 修复了必须排除副本的服务哈希问题。修复 compose #10077
- Compose 现在根据项目而不是正在运行的容器来检查服务名称。修复了 compose #9951
- 修复了安全选项支持(seccomp 和 unconfined)。修复 compose #9505
- 修复了在源文件较小的情况下使用 compose config 时出现空文件的问题。修复 compose #10121
- 修复了
--pull
未应用于compose up
.修复 compose #10125 - 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 日志上的争用条件。修复 compose #8880
- 通过将 projectOptions 重命名为 ProjectOptions,将其更新为 public。修复了 compose#100102
2.14.1
2022-12-15更新
- 依赖项升级:bump Go 到 1.19.4
- 依赖项升级:将 containerd 升级到 1.6.12
错误修复和增强功能
- 添加
--parallel
以限制并发引擎调用。拉取请求撰写 #10030 - 可区分 stdout 和 stderr in
up
原木。修复 compose #8098 - 一致
compose ps
output 替换为docker ps
.修复 compose #6867 - 添加
--include-deps
以推送命令。拉取请求撰写 #10044 - 介绍
--timestamp
选项compose up
.修复 compose #5730 - 现在,Compose 在从环境创建密钥时应用 uid/gid。拉取请求撰写 #10084
- 修复了等待 attached-dependencies 时的死锁。修复 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
- 依赖项升级:bump Go to 1.19.3
错误修复和增强功能
- 添加
oom_score_adj
field 到 service definition 的 API 中。拉取请求撰写 #10019 - 为 tmpfs 挂载权限添加了 mode 字段。拉取请求撰写 #10031
- Compose 现在仅停止由
up
当被打断时。修复 compose #10028 - Compose 现在会为目标服务加载隐式配置文件。修复 compose #10025
- Compose 不需要
service.build.platforms
如果service.platform
已设置。修复 compose #10017 - 如果满足以下条件,则在 buildx 镜像构建期间使用普通输出
--ansi=never
已设置。修复 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 依赖项。拉取请求撰写 #9982
错误修复和增强功能
- 添加了
no-consistency
选项设置为convert
命令。修复 compose #9963 - 添加了
build
选项设置为run
命令。修复 compose #10003 - 固定映射
restart_policy.condition
设置为引擎支持的值。修复了 compose #8756、docs #15936 - 修复了缺少对 的支持
deploy.reservation.memory
.修复 compose #9902 - 修复了一个错误,以防止使用
COMPOSE_PROFILES
什么时候--profile
arg 的调用。修复 compose #9895 - 修复了一个错误,以防止在依赖将构建此镜像的服务时提取服务的镜像。修复了 compose #9983
- 修复了找不到容器编号标签时的解析问题。修复 compose #10004
- Compose 现在使用
DOCKER_DEFAULT_PLATFORM
当 Noservice.platform
定义。修复 compose #9889 - 删除了已弃用依赖项的用法
gotest.tools
v2 的拉取请求撰写 #9935 - 标有
kind/feature
来自陈旧的 bot 进程。修复 compose #9988
2.12.2
2022-10-21更新
- 更新了 Docker 引擎 API,以恢复与 Linux 打包所需的 Golang 1.18 的兼容性。拉取请求撰写 #9940
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.12.2 发布页面。
2.12.1
2022-10-21安全
- 更新了 Docker Engine API 以应用 CVE-2022-39253 的修复程序。拉取请求撰写 #9934
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.12.1 版本页面。
2.12.0
2022-10-18更新
CI 更新到文档仓库路径
更新至 1.19.2 以解决 CVE-2022-2879、CVE-2022-2880、CVE-2022-41715
错误修复和增强功能
- 添加了
quiet
选项。修复 compose #9089 - 修复了
port
命令。拉取请求撰写 #9909 - 修复了一个错误,以防止 Compose 尝试删除不存在的容器时失败。由 compose 修复#9896
- 切换的 GitHub 问题模板表单
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.12.0 发布页面。
2.11.2
2022-09-27注意
- 环境文件语法和插值更新:参见compose#9879
- 设置
DOCKER_HOST
通过.env
Compose v2 不支持 files
更新
错误修复和增强功能
- 修复了一个错误,以防止有效环境变量值出现“无效模板”错误。修复了 compose##9806、compose##9746、compose##9704、compose##9294
- 修复了一个错误,以确保来自
docker compose build
使用。修复 compose #9856 - 修复了
DOCKER_DEFAULT_PLATFORM
未设置。修复 compose #9864 - 修复了使用
depends_on
.修复 compose #9014 - 已结清服务
CMD
当 entry point 被覆盖时。修复 compose #9622 - 配置了默认构建器导出(当否)
build.platforms
定义。修复 compose #9856 - 修复了一个错误,以通过 DOCKER_DEFAULT_PLATFORM 或
service.platform
属性。修复 compose #9864 - 删除了对
DOCKER_HOST
在.env
文件。修复 compose #9210 - 修复了一个错误,以确保在 run command 中覆盖入口点时清理 service 命令。修复 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
condition 当服务具有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
错误修复和增强功能
- 添加了 platforms build。修复 compose-spec #267
- 日志现在会筛选出当前 Compose 文件中的服务。修复 compose #9801
- 添加了改进的拉取镜像时的输出警告。修复 compose #9820
- 修复了一个错误,以确保在服务具有依赖项时正确捕获退出代码。修复 compose #9778
- 固定
down
跟--rmi
.修复 compose #9655 - 修复了在使用 --no-interpolate 选项时将 $ 转换为 $$ 的 docker-compose 转换问题。修复 compose #9160
- 固定
build.go
访问自定义标签直接会导致 panic。参见 compose#9810 - 将新加载的 envvar 应用于 “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。 - 改进
Makefile
在 docker/docker-ce-packaging#742 中使用。
有关完整的更改日志或其他信息,请查看 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
checksum 文件。修复了 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。
错误修复和增强功能
- 将环境变量的优先级恢复到 OS
.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。
- 修复了 up/start/run 以不等待禁用的依赖项。修复了 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
到 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。
更新
- 依赖项升级:升级到 1.18.4。
- 依赖项升级:将 compose-go 升级到 v1.2.9。
错误修复和增强功能
- 网络:防止了由于重复名称而导致的问题。修复了 moby/moby#18864。
- 修复了关闭网络名称的问题
compose up
和compose down
命令。修复了 compose#9630。 - 运行时为 one-shot 容器使用了适当的依赖项条件
compose up --wait
.修复了 compose #9606。 - 修复了环境变量扩展。
- 一致性检查中存在经过验证的 depended-on 服务。修复了 compose #8910。
- 修复了环境值中的哈希用法。修复了 compose#9509。
- Docker Build:添加了修复以遵循经典构建器的依赖项顺序。修复了 compose#8538。
- 修复了空字符串参数引起的 panic。修复了 compose-switch#35。
- 修复了启动/重启问题,以不影响一次性容器。修复了 compose#9509。
- 修复了以下时间保留容器引用
volumes_from
以容器为目标,而不是以服务为目标。修复了 compose #8874。 - build.go:添加了初始化的修复
CustomLabels
map 如果nil
. - 添加了新目标,用于在运行 e2e 测试之前构建 Compose Binaries。
- CI:已发布的工作流,用于在包含最新更改的 docs 存储库上打开 PR。
- E2E:添加了
ps
. - E2e:拆分 Pause 测试并添加更多事例。
- E2e:添加更多启动/停止测试用例。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.7.0 发布页面。
2.6.1
2022-06-23新增功能
- 添加了对从环境变量设置 secret 的支持。修复了 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。
- 依赖项升级:从 1.7.0 升级到 1.7.2 github.com/stretchr/testify。
- 依赖项升级:github.com/docker/buildx 从 0.8.1 升级到 0.8.2。
- 依赖项升级:github.com/AlecAivazis/survey/v2 从 2.3.2 升级到 2.3.5。
- 依赖项升级:从 1.6.2 升级到 1.6.6 github.com/containerd/containerd。
错误修复和增强功能
- 添加了指向容器创建请求的链接。修复 #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
output 列出所有公开的端口。修复 #9257。 - 修复了 中的拼写错误
compose ps
法典。 - 固定
docker compose
荣誉--no-ansi
即使请求 deprecated 选项。 - 修复了网络名称和网络 ID 可能存在的歧义。
- E2E:添加了
ps
. - E2e:将 JSON 解组到容器摘要中。
- E2e:修复了子测试并阻止并行的不安全测试。
- E2e:将测试命令 env 与系统 env 隔离。
- E2e:固定杂散
ps
失败。 - E2E:确保所有 Compose 命令独立兼容。
- E2e:改进了失败的测试输出。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.6.1 版本页面。
2.6.0
2022-05-30新增功能
- 向 build 部分添加了 tags 属性。在此属性中,除了 image 属性中定义的标签外,还可以将标签定义为应用于最终镜像。
- 添加了端到端测试,以确保环境变量优先级没有回归。
- 添加了 ddev 的端到端测试。
更新
- 依赖项更新:将 compose-go 升级到 1.2.6。
- 依赖项更新:将 compose-go 升级到 1.2.7。
- 依赖项更新:将 golang 升级到 1.18。
错误修复和增强功能
- 固定
compose up
仅附加到在启用了配置文件的项目中声明的服务。修复 #9286。 - 修复了从多个服务拉取同一镜像时出现闪烁提示的问题。修复 #9469。
- 修复了 compose go to import .env file to OS environment 以允许通过此文件设置变量(如 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 选项在 logs 输出行中打印的额外空格。修复 #9464。
- 阐明了在传递多个 compose 文件时的默认 work dir 是什么。
- cp 命令:作为默认行为复制到服务的所有容器。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.5.1 版本页面。
2.5.0
2022-04-29错误修复和增强功能
- 修复了 panic 和
compose down
命令-p
flag 指定。修复 #9353。 - 将新创建的项目作为输入传递给启动服务 (
docker compose up
).修复 #9356。 - 在 docker-compose 文件的链接下声明为隐式依赖项的包含服务。修复 #9301。
- 添加的更改
docker compose pull
遵循已定义策略的命令:1) 跳过配置为pull_policy: never
2) 忽略那些具有现有镜像的 API,以及pull_policy: missing
.修复 #3660。 - 不再忽略从资源构建项目时出错,以防止
down
恐慌。修复 #9383。 - 强制将项目名称设置为小写。修复 #9378。
- 添加了对构建时密钥的支持。修复 #6358。
- 改变
compose-go
允许 Engine 使用(重新)构建 Volume Stringbind
无法使用 mount 时的 API。修复 #9380。 - 提供 checksums.txt 文件并添加
--binary
以允许在不同作系统中进行验证。修复 #9388. - 添加了更改,以便检查本地拉取的镜像的 ID 并将其持久保存到
com.docker.compose.image
.修复 #9357。 - 修复了有关 IPAM 网关设置的问题。修复 #9330。
- 添加了对 docker compose Binaries的 ppc64le 架构的支持。
- 修复了 中的搜索/替换拼写错误
--no-TTY
文档。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.5.0 发布页面。
2.4.1
2022-04-04错误修复和增强功能
- 传递了
--rm flag
值,就像运行具有此标志的容器时一样。修复 #9314。 - 在从
docker compose up
命令。修复 #9338。 - 增加了对集装箱检查是否需要 TTY 的检查。运行服务
tty:true
指定 now show console output。修复 #9288。
有关完整的更改日志或其他信息,请查看 Compose 存储库 2.4.1 发布页面。
2.4.0
2022-04-1更新
- 依赖项更新:将 buildx 升级到 v0.8.1。修复在处理构建上下文扫描错误时可能出现的 panic。
错误修复和增强功能
- 将交互式标志 '-i' 从 Compose CLI 传递到 Docker 以运行 exec 命令。修复 #9315。
- Compose 命令现在采用
COMPOSE_PROJECT_NAME
环境变量。修复 #9316。 - 修复了
compose down
命令,当在未启动任何服务或要删除的资源的上下文中执行时,将返回错误。错误是由于命令尝试删除不存在的默认网络。修复 #9333。 - 引入了对
cache_from
,cache_to
,no_cache
和pull
属性。这些属性允许从源强制完全重建,并使用注册表检查使用的镜像。这些变化为产品/服务--no-cache
和--pull
options for compose build(或等效)命令。 - 引入了对
--ssh
flag 的build
命令和 Compose 文件。修复 #7025。 - 修正了 中的拼写错误
--ssh
标志描述。与 #7025 相关。 - 将 Kubernetes 依赖项固定到与 buildx 中相同的版本。
- 将 interactive 标志从 Compose CLI 传递到 Docker 以运行 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 来处理所有 interactive/tty/* 终端逻辑。
删除
- 删除了没有候选项的容器现在会生成警告而不是错误。修复 #9255。
- 从 run 和 exec 命令的 -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
now 不会根据选项的预期和记录的行为删除外部卷和网络。每当指定 project 时,它现在还用于强制 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)
杂项
删除了要使用的提示
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)
错误
修复了 shellout 到 SSH 客户端时的 OpenSSL 版本不匹配错误(通过bump to docker-py 4.4.4 which contains the fix)。
向本机构建器添加了缺少的构建标志:
platform
,isolation
和extra_hosts
.删除了有关本机版本的信息消息。
修复了当服务日志记录驱动程序设置为 'none' 时日志获取错误。
1.28.4
(2021-02-18)
Bug 修复
- 通过将 docker-py 升级到 4.4.3 修复了 SSH 端口解析问题。
杂项
- 将 Python 升级到 3.7.10。
1.28.3
(2021-02-17)
Bug 修复
修复了 SSH 主机名在包含前导 's'/'h' 时的解析,并删除了隐藏错误的 quiet 选项(通过 docker-py 升级到 4.4.2)。
修复了 的键错误
--no-log-prefix
选择。修复了服务配置文件的 CLI 环境变量名称不正确的问题:
COMPOSE_PROFILES
而不是COMPOSE_PROFILE
.修复了fish的完成问题。
杂项
将加密技术升级到 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 的支持。
添加了对服务配置文件的支持。
通过向本地 SSH 客户端发送 shelling,更改了 Docker CLI 的 SSH 连接方法。将
COMPOSE_PARAMIKO_SSH=1
环境变量来启用旧行为。添加了一个标志来禁用日志前缀。
添加了 ANSI 输出控件的标志。
Docker Compose 现在使用本机 Docker CLI 的
build
命令。将COMPOSE_DOCKER_CLI_BUILD=0
环境变量来禁用此功能。
Bug 修复
䍬
parallel_pull=True
默认情况下。恢复了非 swarm 模式下的配置的警告。
服用
--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。
将对基本镜像的限制放宽为最新的次要镜像。
更新了 README。
1.27.4
(2020-09-24)
Bug 修复
删除了 bind 挂载的路径检查。
修复了端口渲染以输出非 v1 的长格式语法。
向 Docker 套接字地址添加了协议。
1.27.3
(2020-09-16)
Bug 修复
合并
max_replicas_per_node
upperdocker-compose config
.固定
depends_on
序列化docker-compose config
.修复了某些容器未运行时的缩放
docker-compose up
.启用了 的相对路径
driver_opts.device
为local
司机。允许的字符串
cpus
领域。
1.27.2
(2020-09-10)
Bug 修复
- 修复了 上的 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
upperdocker-compose run
什么时候COMPOSE_DOCKER_CLI_BUILD
环境变量。将 docker-py 默认 API 版本用于引擎查询 (
auto
).解析
network_mode
在构建时。
Bug 修复
当不需要构建时,忽略构建上下文路径验证。
修复了通过 docker-py 将浮点数转换为字节的问题,并将其提升到 4.3.1。
修复了设置 deploy 部分时的 scale 错误。
固定
docker-py
碰撞setup.py
.修复了实验性构建失败检测。
修复了到 Docker CLI 的上下文传播问题。
杂项
撞
docker-py
更改为 4.3.1。撞
tox
升级到 3.19.0。撞
virtualenv
到 20.0.30。新增 Docs 同步脚本。
1.26.2
(2020-07-02)
Bug 修复
- 执行
docker-py
4.2.2 作为使用 pip 安装时的最低版本。
1.26.1
(2020-06-30)
特征
- 撞
docker-py
从 4.2.1 升级到 4.2.2。
Bug 修复
执行
docker-py
4.2.1 作为使用 pip 安装时的最低版本。修复了非 Docker 端点的上下文加载。
1.26.0
(2020-06-03)
特征
添加
docker context
支持。添加了缺少的测试依赖项
ddt
自setup.py
.添加
--attach-dependencies
to 命令up
用于附加到依赖项。允许的兼容性选项
COMPOSE_COMPATIBILITY
环境变量。撞
Pytest
添加到 5.3.4 中,并添加与新版本的 Refactor 兼容性。撞
OpenSSL
从 1.1.1f 到 1.1.1g。撞
certifi
从 2019.11.28 到 2020.4.5.1。撞
docker-py
从 4.2.0 升级到 4.2.1。
Bug 修复
正确转义的值来自
env_files
.将 compose-schemas 与上游 (docker/cli) 同步。
删除
None
exec 命令上的条目。添加
distribution
package 来获取分发信息。添加
python-dotenv
委托.env
文件处理。停止在通过管道连接到另一个命令时调整终端宽度上的输出。
在以下情况下显示错误消息
version
属性格式错误。修复了 HTTPS 连接
DOCKER_HOST
是远程的。
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 进行编译。
更新了发布页面上Binaries的 sha256。
1.25.2
(2020-01-20)
新功能
- Docker Compose 现在允许使用
COMPOSE_COMPATIBILITY
环境变量。
Bug 修复
修复了导致 Docker Compose 崩溃的问题,该问题在
version
字段设置为无效值。现在,当 version 字段中使用无效值时,Docker Compose 会显示错误消息。修复了导致 Docker Compose 在终端外部运行命令时错误地呈现消息的问题。
1.25.1
(2020-01-06)
错误修复
解码了
APIError
在 Unicode 创建和启动容器之前对其进行解释。Docker Compose 丢弃
com.docker.compose.filepaths
具有None
作为值。这通常发生在标签源自 stdin 时。添加了 OS X Binaries作为目录,以解决由 macOS Catalina 二进制扫描引起的启动时间缓慢问题。
传递了
HOME
环境变量script/run/run.sh
.Docker Compose 现在报告无法拉取的镜像,但是需要构建镜像。
1.25.0
(2019-11-18)
新功能
通过将 no-colors 更改为 true
CLICOLOR
env 变量设置为0
.向服务标签添加了工作目录、配置文件和 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
提供生成libmusl
Alpine Linux 的Binaries。仅拉取无法构建的镜像。
这
scale
属性现在接受0
作为值。添加了
--quiet
选项和--no-rm
选项添加到docker-compose build
命令。添加了
--no-interpolate
选项添加到docker-compose config
命令。从
1.1.0
自1.1.1c
.添加了对
docker-compose.yml
文件的credential_spec
configuration 选项。摘要的分辨率,而不必拉取镜像。
升级
pyyaml
目标版本4.2b1
.将严重性降低到
warning
对于其中down
尝试删除不存在的镜像。在可能的情况下,强制对项目事件使用改进的 API 字段。
更新
setup.py
现代pypi/setuptools
,并删除pandoc
依赖。删除
Dockerfile.armhf
,现在不再需要。
Bug 修复
使容器服务颜色具有确定性,包括删除颜色 red。
修复了非 ASCII 字符错误(仅限 Python 2)。
将镜像大小更改为十进制格式,以与 Docker CLI 保持一致。
tty
通过 Python POSIX 支持获取的大小。修复了相同的文件
extends
优化。固定
stdin_open
.修复了
--remove-orphans
在使用过程中遇到被忽略up --no-start
选择。固定
docker-compose ps --all
命令。修复了
depends_on
dependency recreation 行为。修复了
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)
特征
添加了对使用
ssh
协议。添加了一个
--all
flag 设置为docker-compose ps
包括已停止的一次性集装箱 在命令的输出中。添加了 bash 完成
ps --all|-a
.添加了对 credential_spec 的支持。
添加
--parallel
自docker build
的选项bash
和zsh
完成。
Bug 修复
修复了 Compose 无法正确处理某些有效凭据帮助程序的错误 尝试从私有注册表中提取镜像时。
修复了
docker-compose start
在创建容器之前 具有误导性。Compose 将不再接受来自环境文件的变量名称中的空格。 这与 Docker CLI 行为匹配。
现在,如果服务尝试声明 Volumes 部分中的重复挂载点。
修复了 Compose 容器化版本导致用户无法 在交互式会话期间写入 stdin 由
run
或exec
.由
run
不再采用服务的重启策略, ,而是设置为 Never restart。修复了导致某些容器事件未显示在 这
docker-compose events
命令。丢失的镜像将不再停止
docker-compose down
命令。警告为 现在改为显示。力
virtualenv
macOS CI 的版本。修复了当网络具有
None
config。固定
CTRL+C
问题bootloader_ignore_signals
在pyinstaller
.撞
docker-py
version 设置为3.7.2
以修复 SSH 和代理配置问题。修复了发布脚本和发布文档中的一些拼写错误。
1.23.2
(2018-11-28)
Bug 修复
恢复了 1.23.0 的更改,该更改将随机字符串附加到容器名称 创建者
docker-compose up
,导致可寻址性问题。注意
容器创建者
docker-compose run
将继续使用随机生成的名称,以避免在并行运行期间发生冲突。修复了某些
dockerfile
在以下情况下,paths 会意外失败 尝试在 Windows 上构建。修复了在 Windows 上无法构建构建上下文 URL 的错误。
修复了导致
run
和exec
命令失败 接受的--host
参数。修复了
storage_opt
和isolation
键输入 服务定义未正确应用。修复了某些无效的 Compose 文件会引发未捕获的错误 验证期间的 exception。
1.23.1
(2018-11-01)
Bug 修复
修复了使用早于 Compose 的 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
flag 添加到docker-compose build
命令, 允许 Compose 可同时构建最多 5 个镜像。输出
pull
Command 现在即使在拉取时也会报告状态/进度 多个镜像并行。对于具有多个名称的镜像,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
条目设置为 打印为external: true
在docker-compose config
.修复了发出
docker-compose pull
服务命令 如果没有定义的镜像密钥,则会导致 Compose 崩溃。卷和绑定现在按照它们在 服务定义。
杂项
- 这
zsh
补全脚本已更新为新选项,并且没有 longer 建议在需要服务名称的地方使用容器名称。
1.22.0
(2018-07-17)
新功能
Compose 格式版本 3.7
引入了 3.7 版的
docker-compose.yml
规范。 此版本需要 Docker Engine 18.06.0 或更高版本。添加了对
rollback_config
在 Deploy 配置中添加了对
init
服务配置中的 parameter添加了对 service、network、volume、secret 中的扩展字段的支持, 和 config 配置
Compose 格式版本 2.4
- 添加了对 service、network、 和卷配置
Bug 修复
修复了在以下情况下阻止部署某些 Compose 文件的错误
DOCKER_DEFAULT_PLATFORM
已设置Compose 将不再尝试使用 无效的起始字符
修复了导致 Compose 命令无法正常工作的几个错误 使用旧版 Compose 创建的容器
修复了
docker-compose config
使用--compatibility-mode
标志在源文件包含 可连接的网络修复了阻止
gcloud
凭据存储无法正常工作 在 UNIX 上与 Compose Binaries一起使用时正确修复了尝试作时导致连接错误的 bug 在 Windows 上通过非 HTTPS TCP 连接
修复了导致在 Windows 上构建失败的错误,如果 Dockerfile 位于 build 上下文的子目录中
修复了无法正确解析 UTF-8 BOM 编码的问题 在 Windows 上编写文件
修复了
**
.dockerignore
files 时docker-compose build
修复了导致 legacy 中的 auth 值的错误
.dockercfg
要忽略的文件docker-compose build
将不再尝试创建以无效字符开头的镜像名称
1.21.2
(2018-05-03)
Bug 修复
- 修复了 IPAM 配置中的 ip_range 属性被阻止的错误 通过验证
1.21.1
(2018-04-27)
Bug 修复
在 1.21.0 中,我们更改了项目名称的清理方式 资源名称中的 internal 使用。这会导致在作 已部署的现有应用程序,其名称因此而更改。 此版本使用 “legacy” 命名约定正确检测资源。
修复了使用绝对 尽管 path 有效,但 path 也会失败。
修复了错误地检测到 IPAM 选项更改的错误,从而阻止 重新部署。
v2 文件的验证现在可以正确检查 IPAM 配置的结构。
改进了对 Windows 上凭据存储的支持,以包含Binaries 扩展名以外的
.exe
.有效扩展名列表由 的PATHEXT
环境变量。修复了 Compose 会生成包含重复项的无效绑定的错误 元素中,在 部署。
1.21.0
(2018-04-11)
新功能
Compose 文件版本 2.4
引入了 2.4 版的
docker-compose.yml
规范。 此版本需要 Docker Engine 17.12.0 或更高版本。添加了对
platform
参数。 如果提供,则在为 服务。
Compose 文件版本 2.2 及更高版本
- 添加了对
cpu_rt_period
和cpu_rt_runtime
参数 在 Service Definitions (仅限 2.x) 中。
Compose 文件版本 2.1 及更高版本
添加了对
cpu_period
服务定义中的 parameter (仅限 2.x)。添加了对
isolation
参数。 此外,isolation
服务定义中的 parameter 用于 如果没有,则构建build.isolation
参数。(仅限 2.x)
所有格式
添加了对
--workdir
标志输入docker-compose exec
.添加了对
--compress
标志输入docker-compose build
.docker-compose pull
现在默认并行执行。您可以 使用--no-parallel
旗。这--parallel
flag 现在是 已弃用,并将在未来版本中删除。项目名称中的短划线和下划线不再被去除。
docker-compose build
现在支持从外部使用 Dockerfile 生成上下文。
Bug 修复
现在,Compose 会检查卷的配置是否与远程 volume 的 SET 和错误(如果检测到不匹配)。
修复了导致 Compose 在尝试时引发意外错误的 bug 以并行创建多个一次性容器。
修复了使用
docker-machine config
自 生成 TLS 标志exec
和run
命令。修复了使用空默认值替换变量的错误 (例如
${VAR:-}
) 将打印不正确的警告。改进了 Compose 文件编码与 系统的。鼓励用户尽可能使用 UTF-8。
修复了 Swarm 中的外部覆盖网络会不正确的错误 被 Compose 识别为不存在,从而中断其他有效的 操作。
1.20.0
(2018-03-20)
新功能
Compose 文件版本 3.6
引入了 3.6 版
docker-compose.yml
规范。 此版本必须与 Docker Engine 18.02.0 或更高版本一起使用。添加了对
tmpfs.size
volume mappings 中的属性
Compose 文件版本 3.2 及更高版本
- 这
--build-arg
选项现在可以在不指定服务的情况下使用 在docker-compose build
Compose 文件版本 2.3
添加了对
device_cgroup_rules
在 Service definitions 中添加了对
tmpfs.size
长格式体积映射中的属性这
--build-arg
选项现在可以在不指定服务的情况下使用 在docker-compose build
所有格式
添加了
--log-level
选项添加到顶级docker-compose
命令。 接受的值为debug
,info
,warning
,error
,critical
. 默认日志级别为info
docker-compose run
现在允许用户取消设置容器的入口点代理配置在
~/.docker/config.json
文件现在填充 environment 并为 Compose 创建的容器构建参数添加了
--use-aliases
flag 设置为docker-compose run
,表示 在服务配置中声明的网络别名应用于 正在运行的容器添加了
--include-deps
flag 设置为docker-compose pull
docker-compose run
现在 kill 并删除正在运行的容器 接收SIGHUP
docker-compose ps
现在显示容器的运行状况(如果可用)添加了长格式
--detach
选项添加到exec
,run
和up
命令
Bug 修复
固定
.dockerignore
处理,特别是关于绝对路径的处理 和最后一行优先规则修复了 Compose 在连接时进行昂贵的 DNS 查找的问题 使用 Docker For Mac 时的引擎
修复了 1.19.0 中引入的导致默认证书路径的错误 不被 Compose 执行
修复了 Compose 会错误地检查符号链接的 destination 在构建上下文的一部分时可访问
修复了
.dockerignore
包含空格行的文件 导致 Compose 在 Windows 上出错修复了
--tls*
和--host
options 不会得到适当的遵守 用于交互式run
和exec
命令一个
seccomp:<filepath>
条目security_opt
现在配置正确 将文件内容发送到引擎ANSI 输出
up
和down
作应该不再影响 wrong 线改进了对非 Unicode 区域设置的支持
修复了当用户的主目录名称 包含非 ASCII 字符
修复了在构建过程中由具有负数的文件引起的错误
mtime
生成上下文中的值修复了流式传输构建进度时的编码错误
1.19.0
(2018-02-07)
重大更改
- 在 UNIX 平台上,交互式
run
和exec
命令现在需要 这docker
CLI 默认安装在客户端上。还原 对于之前的行为,用户可以将COMPOSE_INTERACTIVE_NO_CLI
环境变量。
新功能
Compose 文件版本 3.x
- 的
config
命令现在应该合并deploy
选项来自 以更准确的方式编写多个 Compose 文件
Compose 文件版本 2.3
- 添加了对
runtime
服务定义中的选项
Compose 文件版本 2.1 及更高版本
- 添加了对
${VAR:?err}
和${VAR?err}
变量插值 用于指示强制变量的语法
Compose 文件版本 2.x
- 添加
priority
key 添加到服务网络映射中,允许用户 定义指定服务将按什么顺序连接到每个网络
所有格式
添加
--renew-anon-volumes
(简写-V
) 到up
命令 阻止 Compose 从以前的容器中恢复 匿名卷增加了同时并行作的数量限制,该限制应 防止服务器资源意外耗尽。默认值为 64 且 可以使用
COMPOSE_PARALLEL_LIMIT
环境变量添加
--always-recreate-deps
flag 添加到up
强制重新创建的命令 依赖服务以及依赖所有者添加
COMPOSE_IGNORE_ORPHANS
放弃 Orphan 的环境变量 容器检测和禁止显示警告添加
COMPOSE_FORCE_WINDOWS_HOST
用于强制 Compose 的环境变量 解析卷定义,就像 Docker 主机是 Windows 系统一样, 即使 Compose 本身当前在 UNIX 上运行Bash 补全现在应该能够更好地区分正在运行的 已停止和已暂停的服务
Bug 修复
修复了一个错误,该错误会导致
build
用于报告连接的命令 当构建上下文包含不可读的文件或 FIFO 对象时出错。 现在将适当处理这些文件类型修复了 interactive 周围的各种问题
run
/exec
会话。修复了使用环境和 CLI 标志设置 TLS 选项的错误 将导致部分配置被忽略
修复了 DOCKER_TLS_VERIFY 环境变量被 被 Compose 忽略
修复了
-d
和--timeout
标志up
是错误的 标记为不兼容修复了如果镜像 已删除与前一个容器关联的容器
修复了更新挂载目标在以下情况下会中断 Compose 的错误 尝试重新创建关联的服务
修复了
tmpfs
使用 Extended 语法声明的卷 使用版本 3.2 的编写文件将被错误地创建为匿名文件 卷修复了类型转换错误会改为打印堆栈跟踪的错误 优雅地退出
修复了一些与 Unicode 处理相关的错误
依赖服务不再与依赖所有者一起重新创建 如果其配置尚未更改
添加了更好的验证
labels
字段。标签值 包含标量类型(数字、布尔值)现在会自动转换 到字符串
1.18.0
(2017-12-18)
新功能
Compose 文件版本 3.5
引入了 3.5 版
docker-compose.yml
规范。 此版本需要 Docker Engine 17.06.0 或更高版本添加了对
shm_size
parameter (生成配置)添加了对
isolation
服务定义中的 parameter添加了对 network、secret 和 config 定义的自定义名称的支持
Compose 文件版本 2.3
添加了对
extra_hosts
在 Build Configuration 中添加了对卷条目的 long 语法的支持,如之前在 3.2 格式中引入的那样。 使用此语法将创建 mounts 而不是 volumes。
Compose 文件版本 2.1 及更高版本
添加了对
oom_kill_disable
服务定义中的 parameter (仅限 2.x)添加了对网络定义的自定义名称的支持(仅限 2.x)
所有格式
从环境中插值的值现在将转换为 在非字符串字段中使用时,应使用 PROPER 类型。
添加了对
--label
在docker-compose run
添加了对
--timeout
在docker-compose down
添加了对
--memory
在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 的条目 错误修复了缺少 secret 文件会生成空目录的错误 取而代之
修复了 CLI 错误处理程序中的字符编码问题
添加了对
test
healthchecks 中的字段添加了对
subnet
IPAM 配置中的字段添加了
volumes
在 中使用长语法时的属性 服务定义CLI 现在显式阻止使用
-d
和--timeout
一起 在docker-compose up
1.17.0
(2017-11-01)
新功能
Compose 文件版本 3.4
引入了 3.4 版
docker-compose.yml
规范。 此版本需要与 Docker Engine 17.06.0 或更高版本一起使用。添加了对
cache_from
,network
和target
Build 中的选项 配置添加了对
order
参数中的update_config
部分添加了对在卷定义中设置自定义名称的支持 这
name
参数
Compose 文件版本 2.3
- 添加了对
shm_size
build configuration 中的选项
Compose 文件版本 2.x
- 添加了对扩展字段 (
x-*
).也可用于 v3.4 文件
所有格式
- 新增
--no-start
到up
命令,允许用户创建所有 资源(网络、卷、容器),而无需启动服务。 这create
命令已弃用,取而代之的是这个新选项
Bug 修复
修复了
extra_hosts
值将被扩展覆盖 文件,而不是合并在一起修复了 v3.2 文件的验证会阻止使用
consistency
Service Volume Definitions 中的 field修复了一个错误,该错误会导致在配置字段需要 唯一项将包含重复项
修复了使用不同模式的挂载覆盖会创建 重复条目,而不是覆盖原始条目
修复了声明为列表的构建标签不正确的错误 解析
修复了
docker-compose config
将无效 对于某些版本,如果文件包含自定义命名的外部卷改进了在 Windows 上使用 不支持的文件版本
修复了名称相同的网络有时 运行时创建
up
命令。
1.16.0
(2017-08-31)
新功能
Compose 文件版本 2.3
引入了 2.3 版
docker-compose.yml
规范。 此版本需要与 Docker Engine 17.06.0 或更高版本一起使用。添加了对
target
parameter (生成配置)添加了对
start_period
healthcheck 中的 parameter 配置
Compose 文件版本 2.x
添加了对
blkio_config
服务定义中的 parameter添加了对在卷定义中设置自定义名称的支持 这
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
失败时退出代码修复了 keys in
deploy.resources
未得到验证修复了
logging
options 在docker-compose config
将设置为null
、无效值修复了
docker-compose images
命令时,当镜像 将来自使用显式端口号的私有存储库修复了
docker-compose config
当使用端口定义时0
作为已发布端口的值
1.15.0
(2017-07-26)
新功能
编写文件版本 2.2
- 添加了对
network
参数。
Compose 文件版本 2.1 及更高版本
这
pid
选项现在支持service:<name>
价值。添加了对
storage_opt
参数。 此选项不适用于 v3 格式
所有格式
添加
--quiet
flag 设置为docker-compose pull
、抑制进度输出对 CLI 输出的一些改进
Bug 修复
通过
--volume
的标志docker-compose run
现在 补充服务定义中声明的卷,而不是替换 他们修复了使用多个 Compose 文件会取消设置 scale 值的错误 在 Compose 文件中定义。
修复了
credHelpers
条目中的config.json
文件 未得到 Compose 的认可修复了将多个 Compose 文件与端口声明一起使用的错误 会导致 Python 3 环境中失败
修复了一些与代理相关的选项存在于用户的 环境会阻止 Compose 运行
修复了
docker-compose config
将无效 如果原始文件使用Y
或N
值修复了阻止
up
对先前创建的堆栈执行的作 Windows 引擎。
1.14.0
(2017-06-19)
新功能
Compose 文件版本 3.3
- 引入了 3.3 版
docker-compose.yml
规范。 此版本需要与 Docker Engine 17.06.0 或更高版本一起使用。 注意:credential_spec
和configs
密钥仅适用于 Swarm 服务 ,并且会被 Compose 忽略
编写文件版本 2.2
- 服务定义中新增以下参数:
cpu_count
,cpu_percent
,cpus
Compose 文件版本 2.1
- 添加了对构建标签的支持。此功能在 2.2 和 3.3 格式。
所有格式
添加了速记
-u
为--user
标志输入docker-compose exec
Compose 文件和远程网络之间的标签差异 现在将打印警告,而不是阻止重新部署。
Bug 修复
修复了服务依赖项被重新缩放为其 default scale (运行
docker-compose run
命令修复了
docker-compose rm
使用--stop
flag 不是 在提供要删除的服务列表时行为正常修复了
cache_from
在 build 部分中,当 使用多个 Compose 文件。修复了在以下情况下阻止将同一端口绑定到不同 IP 的错误 使用多个 Compose 文件。
修复了以下 bug :如果 Compose 不会选取覆盖文件 有
.yaml
外延修复了 Windows 引擎上网络被错误标记的错误 娱乐
修复了服务声明端口会导致某些 Python 3 的版本
修复了
docker-compose config
有时会 包含无效的端口定义
1.13.0
(2017-05-02)
重大更改
docker-compose up
现在将服务的缩放重置为其默认值。 您可以使用新引入的--scale
选项以指定自定义 scale 值
新功能
编写文件版本 2.2
引入了 2.2 版本的
docker-compose.yml
规范。这 版本需要与 Docker Engine 1.13.0 或更高版本一起使用添加了对
init
在服务定义中。添加了对
scale
在服务定义中。配置的值 可以使用--scale
标志输入docker-compose up
. 这scale
命令对此文件格式处于禁用状态
Compose 文件版本 2.x
- 添加了对
options
在ipam
网络定义的部分
Bug 修复
修复了通过
-f
选项不是 正在正确解决修复了
ext_ip::target_port
ports 部分中的表示法 被错误地标记为无效修复了
exec
命令有时不会返回控制权 到终端时-d
旗修复了
config
用于 v3.2 文件的命令修复了
docker-compose
如果没有互联网连接,则会挂起 可用修复了包含通过
-f
标记会导致 Compose 崩溃修复了
docker-compose config
将无效 如果 Compose 文件包含外部密钥修复了使用
--exit-code-from
跟up
如果 Compose 安装在 Python 3 环境中修复了使用
tmpfs
和volumes
将导致无效的 config 状态
1.12.0
(2017-04-04)
新功能
Compose 文件版本 3.2
引入了 3.2 版
docker-compose.yml
规范添加了对
cache_from
在build
服务部分在服务定义中添加了对新扩展端口语法的支持
在服务定义中添加了对新扩展卷语法的支持
Compose 文件版本 2.1
- 添加了对
pids_limit
在 Service definitions 中
编写文件版本 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
在docker-compose up
、退出 导致中止的容器的代码将是 这docker-compose up
命令用户现在可以配置他们想要使用的路径分隔符 要分隔
COMPOSE_FILE
environment 值使用COMPOSE_PATH_SEPARATOR
环境变量在端口映射中添加了对单个端口的端口范围的支持,例如
8000-8010:80
.
Bug 修复
docker-compose run --rm
现在在执行后删除匿名卷, 匹配docker run --rm
.修复了覆盖包含端口列表的文件会导致 引发 TypeError
修复了
deploy
key 的docker-compose config
修复了扩展或缩减服务有时会重复使用的错误 过时的容器
修复了
docker-compose config
将无效 如果项目声明了匿名卷变量插值现在可以正确地发生在
secrets
部分 Compose 文件这
secrets
部分现在正确显示在docker-compose config
修复了对某些网络属性的更改不会 针对以前创建的网络进行检测
修复了
docker-compose
在尝试写入 时会崩溃 封闭管道修复了 Compose 无法选取 COMPOSE_TLS_VERSION与命令行 TLS 标志结合使用时
1.11.2
(2017-02-17)
Bug 修复
修复了阻止 secrets 配置的错误 正确加载
修复了
docker-compose config
命令会失败 如果配置文件包含 Secrets 定义修复了在某些 Linux 发行版上 Compose 会 选取并加载过时版本的 Requests 库
修复了 build 文件夹内的套接字类型文件的问题 将导致
docker-compose
在尝试构建该 服务修复了递归通配符模式未被 认可
**
.dockerignore
文件。
1.11.1
(2017-02-09)
Bug 修复
- 修复了 3.1 文件格式未被识别为有效的错误 由 Compose 解析器
1.11.0
(2017-02-08)
新功能
Compose 文件版本 3.1
- 引入了 3.1 版
docker-compose.yml
规范。这 版本需要 Docker Engine 1.13.0 或更高版本。它引入了支持 用于秘密。有关更多信息,请参阅文档
编写文件版本 2.0 及更高版本
- 引入了
docker-compose top
命令,该命令显示正在运行的进程 了解由 Compose 管理的不同服务。
Bug 修复
修复了扩展定义 healthcheck 字典的服务 将导致
docker-compose
出错。修复了
pid
条目在 Service Definition 中被 在使用多个 Compose 文件时忽略。
1.10.1
(2017-02-01)
Bug 修复
修复了存在旧版本的 docker-py 的问题 package 会导致在运行 Compose 时发生意外崩溃
修复了在以下情况下 healthcheck 依赖项会丢失的问题 对项目使用多个编写文件
修复了导致
config
命令 无效修复了向 v3 Compose 文件添加卷标签会 导致错误
修复了 Windows 上构建上下文路径包含 Unicode 的问题 字符编码不正确
修复了 Compose 在流式传输日志时偶尔会崩溃的错误 容器何时停止或重启
1.10.0
(2017-01-18)
新功能
Compose 文件版本 3.0
- 引入了 3.0 版
docker-compose.yml
规范。这 版本需要与 Docker Engine 1.13 或更高版本一起使用,并且是 专为与docker stack
命令。
Compose 文件版本 2.1 及更高版本
现在可以在服务定义中使用 这
healthcheck
参数现在可以将容器依赖项设置为等待积极的运行状况检查 当使用
depends_on
.请参阅更新后的 语法。注意
此功能不会移植到版本 3 Compose 文件中。
添加了对
sysctls
服务定义中的 parameter添加了对
userns_mode
服务定义中的 parameterCompose 现在会为其创建的网络和卷添加标识标签
编写文件版本 2.0 及更高版本
- 添加了对
stop_grace_period
选项。
Bug 修复
彩色输出现在可以在 Windows 上正常工作。
修复了 docker-compose run 无法设置链接别名的错误 在 Windows 上处于交互模式。
由 Compose 创建的网络现在始终可连接 (编写文件 v2.1 及更高版本)。
修复了
COMPOSE_CONVERT_WINDOWS_PATHS
(0
,false
, 空值)被解释为 true。修复了某些 .dockerignore 模式中的正斜杠不正确的错误 在 Windows 上正确解析
1.9.0
(2016-11-16)
重大更改
- 在 Windows 上将 Compose 与 Docker Toolbox/Machine 结合使用时,卷路径为
不再从
C:\Users
自/c/Users
-style 中。自 重新启用此转换,以便卷继续工作,将 环境变量COMPOSE_CONVERT_WINDOWS_PATHS=1
.用户 Docker for Windows 不受影响,不需要设置变量。
新功能
交互模式
docker-compose run
和docker-compose exec
是 现在在 Windows 平台上受支持。这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
协议。覆盖
logging
配置现在会正确合并options
mappings 中,如果driver
值不冲突。
Bug 修复
修复了几个与
npipe
协议支持。修复了在以下情况下 Windows 路径被错误转换的问题 在 Windows Server 上使用 Docker。
修复了空的
restart
值有时会导致 异常。修复了包含 Unicode 字符的服务日志会 有时会导致发生错误。
修复了环境变量中的 Unicode 值有时会 检索时引发 Unicode 异常。
修复了 Compose 会错误地检测配置的问题 重叠网络不匹配。
1.8.1
(2016-09-22)
Bug 修复
修复了使用凭据存储的用户无法 以访问其私有镜像。
修复了用户使用身份令牌进行身份验证的错误 无法访问他们的私有镜像。
修复了
HttpHeaders
Docker 配置中的条目 文件会导致 Compose 在尝试构建镜像时崩溃。修复了一些与卷中 Windows 路径的处理相关的错误 binding 声明。
修复了 Compose 在尝试 读取来自引擎的流式响应。
修复了 Compose 在遇到 API 错误时会崩溃的问题 流式传输容器日志时。
修复了 Compose 会错误地尝试从 驱动程序不由 Engine 的 API 处理。
修复了
docker-machine config
命令将 无法被 Compose 正确解释。修复了连接到 Docker 引擎时 在同时运行大量服务时,有时会失败。
修复了 Compose 有时会打印误导性 suggestion 消息
bundle
命令。修复了连接错误无法正确处理的问题 在项目初始化阶段编写。
修复了遇到 连接超时。
1.8.0
(2016-06-14)
重大更改
正如 1.7.0 中宣布的那样,
docker-compose rm
现在删除容器 创建者docker-compose run
默认情况下。设置
entrypoint
现在,服务会清空任何默认 命令(即任何CMD
指令 Dockerfile 用于构建它)。这使得它与 这--entrypoint
flag 设置为docker run
.
新功能
添加
docker-compose bundle
,一个构建 bundle 文件的命令 供 Docker 1.12 中的新 Docker Stack 命令使用。添加
docker-compose push
,一个推送服务镜像的命令 到注册表。Compose 现在支持为 使用
COMPOSE_TLS_VERSION
环境变量。
Bug 修复
修复了 Compose 会错误地尝试读取
.env
在项目的根目录下。docker-compose run -e VAR
现在过去了VAR
Through from the Shell 添加到容器中,与docker run -e VAR
.改进了涉及多个编写文件时的配置合并 对于多个服务子键。
修复了包含 Windows 驱动器的卷映射会 有时会被错误地解析。
修复了 Windows 环境中的 host 的根目录将被错误地解析。
修复了
docker-compose config
将输出无效的 如果指定了外部网络,则编写文件。修复了未设置 buildargs 会被分配字符串的问题 含
'None'
而不是预期的空值。修复了 Windows 上之前不显示 yes/no 提示的错误 接收输入。
修复了尝试
docker-compose exec
在 Windows 上 如果没有-d
选项将退出并显示 StackTrace。这将 暂时仍然失败,但应该优雅地这样做。修复了
docker-compose up
将显示 进程结束时的 unrelated stacktrace。docker-compose create
和docker-compose start
显示更多 出错时的描述性错误消息。
1.7.1
(2016-05-04)
Bug 修复
修复了
docker-compose config
对于 v1 文件 将是无效的配置文件。修复了
docker-compose config
不会检查有效性 的链接。修复了
docker-compose help
不会输出 可用的命令和通用选项。修复了使用
docker-compose logs
将不适用于新创建的服务。修复了有时会在 在 up 阶段将 Compose 与 Python 3 结合使用时。
修复了在启动阶段遇到 API 错误的问题 不会被 Compose 识别为失败状态。
修复了 Compose 会因 undefined 而引发 NameError 的错误 非 Windows 平台上的异常名称。
修复了
docker-py
有时是 与 Compose 一起安装。修复了 host 值由
docker-machine config default
不会被docker-compose
命令行。修复了 Compose 有时会在 读取 Swarm 集群广播的事件。
更正了文档中关于
.env
文件 它确实是从当前目录中读取的,而不是在同一个 location 作为 Compose 文件。
1.7.0
(2016-04-13)
重大更改
docker-compose logs
默认情况下,不再遵循 log 输出。现在 匹配docker logs
并在当前日志之后退出 打印出来。用-f
以获取旧的默认行为。不再允许将布尔值作为 Compose 文件中映射的值 (对于键
environment
,labels
和extra_hosts
).以前,此 是一个警告。布尔值应加引号,以便它们成为字符串值。
新功能
Compose 现在会查找
.env
file 添加到运行它的目录中,并将 读取内部定义的任何环境变量(如果它们尚未读取) set 在 shell 环境中。这样,您就可以轻松地为 变量,或者用于 Compose 文件中的任何COMPOSE_*
或DOCKER_*
变量。添加了
--remove-orphans
flag 添加到两者docker-compose up
和docker-compose down
删除已删除服务的容器 从 Compose 文件中。添加了
--all
flag 设置为docker-compose rm
包含创建的容器 由docker-compose run
.这将成为下一个 Compose 版本。添加了对
docker
客户:--tls
,--tlscert
,--tlskey
等。Compose 文件现在支持
tmpfs
和shm_size
选项。添加了
--workdir
flag 设置为docker-compose run
docker-compose logs
现在显示创建的新容器的日志 在它启动之后。这
COMPOSE_FILE
环境变量现在可以包含多个文件, 由主机系统的标准路径分隔符 (:
在 Mac/Linux、Windows 上)。;
现在,您可以在将服务连接到 network 替换为
ipv4_address
和ipv6_address
选项。添加
--follow
,--timestamp
和--tail
flags 添加到docker-compose logs
命令。docker-compose up
和docker-compose start
现在将启动容器 尽可能并行。docker-compose stop
现在以相反的依赖关系顺序停止容器 而不是一次全部。添加了
--build
flag 设置为docker-compose up
强制 IT 构建一个新的 镜像。现在,如果镜像是自动生成的,则会显示警告,当 标志。添加了
docker-compose exec
命令,用于在正在运行的 容器。
Bug 修复
docker-compose down
现在会删除由 创建的容器docker-compose run
.在
up
什么时候 使用 tty.修复了
docker-compose down
如果某些资源 已被删除。修复了更改网络别名不会触发服务的错误 以重新创建。
修复了打印有关创建新卷的日志消息的错误 当它已经存在时。
修复了中断
up
不会总是关闭容器。修复了
log_opt
和log_driver
没有正确结转 以 v1 Compose 文件格式扩展服务时。修复了 build args 的空值会导致文件验证的错误 失败。
1.6.2
(2016-02-23)
- 修复了连接到启用了 TLS 的 Docker 引擎失败的错误,并显示 证书验证错误。
1.6.1
(2016-02-23)
Bug 修复
修复了多次重新创建容器会导致 要在没有先前卷的情况下启动新容器。
修复了 Compose 会设置未设置的环境变量的值的错误 转换为空字符串,而不是没有值的键。
当 Compose 需要更新的版本时,提供更好的错误消息 的 Docker API 中。
添加缺少的配置字段
network.aliases
,允许设置网络 服务的 scoped 别名。修复了
run
无法启动 中列出的服务depends_on
.修复了
networks
和network_mode
使用 扩展或多个 Compose 文件。修复了短容器 ID 别名为 仅包含 10 个字符,而不是之前使用的 12 个字符 版本。
添加了在创建新的命名卷时缺少日志消息。
修复了
build.args
在使用extends
或 多个 Compose 文件。修复了 null 值或类型不正确时配置验证的一些错误 而不是映射。
修复了
build
部分没有context
将显示堆栈 trace 而不是有用的验证消息。通过仅将容器关联性设置为 服务容器的上一个实例(当服务使用 匿名容器卷。以前,affinity 始终设置为 all 器皿。
修复了部分
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 建立网络所需的配置更少。 有关如何使用它,请参阅网络指南。
实验性标志
--x-networking
和--x-network-driver
介绍 在 Compose 1.5 中,已删除。如果您使用的是新文件格式,现在可以将参数传递给构建:
build: context: . args: buildno: 1
您现在可以同时指定
build
以及一个image
键(如果您使用的是 new 文件格式。docker-compose build
将构建镜像并使用 您指定的名称,而docker-compose pull
将尝试拉取 它。有一个新的
events
用于监控容器事件的命令 该应用程序很像docker events
.这是一个很好的基元 在 Compose 上构建工具,以便在特定 事情会发生,例如容器启动和停止。有一个新的
depends_on
用于指定 dependencies between 的选项 服务业。这将强制执行启动顺序,并确保在运行docker-compose up SERVICE
在具有依赖项的服务上,这些依赖项将启动 也。
新功能
添加了一个新命令
config
,用于验证并打印 Compose 配置,解析相对路径,以及 合并多个文件和extends
.添加了一个新命令
create
用于创建容器而不启动容器。添加了一个新命令
down
停止并删除由up
在单个命令中。添加了对
cpu_quota
configuration 选项。添加了对
stop_signal
configuration 选项。命令
start
,restart
,pause
和unpause
现在以 Error Status Code(如果未修改容器)。添加了一个新的
--abort-on-container-exit
flag 设置为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
包含在 from 时被忽略 多个 Compose 文件。修复了在 Compose 文件。
修复了阻止
up
和logs
.修复了导致
None
打印为网络驱动程序名称 使用默认网络驱动程序时。修复了使用
dns
或dns_search
愿意 导致错误。修复了容器在被 处于 restarting 状态。
修复了 DOCKER_CERT_PATH 未正确设置时出现的令人困惑的错误消息。
修复了一个错误,即如果容器使用 非标准日志记录驱动程序(或根本没有)。
1.5.2
(2015-12-03)
修复了一个破坏
environment
和env_file
跟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 文件中服务的选项。修复了
up
如果 服务从使用image
使用build
.修复了导致并行作输出不正确的错误 在某些终端上。
修复了在 的 mode
volumes_from
已更改。修复了 1.5.0 中的一个回归问题,其中非 utf-8 Unicode 字符会导致
up
或logs
崩溃。修复了 1.5.0 中 Compose 使用成功退出状态的回归问题 代码中,当命令因 HTTP 超时而失败时,与 docker 守护进程。
修复了 1.5.0 中的回归,其中
name
被接受为有效 service 选项,该选项将覆盖服务的实际名称。使用
--x-networking
Compose 不再将主机名设置为 容器名称。使用
--x-networking
Compose 将仅创建默认网络 如果至少有一个容器正在使用该网络。在
up
或logs
,在 每行,以防止缓冲问题隐藏日志。如果正在创建容器的依赖项之一,请重新创建容器。 以前,只有当容器已经具有依赖项时,才会重新创建容器 存在,但也正在被重新创建。
在
volume
被忽略 并被来自前一个容器的容器卷屏蔽。提高
pull
在没有 TTY 的情况下运行时。使用多个 Compose 文件时,请先验证每个文件,然后再尝试合并 他们在一起。以前无效的文件将导致无用的错误。
允许在
environment
service 选项。通过将文件名作为 错误信息。
1.5.0
(2015-11-03)
重大更改
在 Compose 文件中引入变量替换支持后,任何
使用环境变量 ($VAR
或${VAR}
) 在command:
或entrypoint:
field 将中断。
以前,这些值是在容器内插值的,其值为 从容器环境。在 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。
现在,当文件包含 配置无效。
up
现在等待所有服务退出后再关闭, 而不是在一个容器退出后立即关闭。对新 docker 网络系统的实验性支持可以是 enabled 的
--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 的 Dockerfile 进行构建。docker-compose pull --ignore-pull-failures
指示 Compose 继续 如果它无法提取单个服务的镜像,而不是中止。现在,您可以在
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
parameter 的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
标记(以前用于解决此问题)已被弃用,现在不起作用。修复了一个 bug,其中
docker-compose build
如果构建依赖于私有 Hub 镜像或私有注册表中的镜像,则会失败。修复了一个错误,即如果存在 Docker 守护程序尚未完成删除的容器,Compose 会崩溃。
修复了两个错误,其中 Compose 有时会失败并显示“Duplicate bind mount”错误,或者如果
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)
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
如果传入了无效的服务名称,则 commands 不会显示错误。
感谢 @dano、@josephpage、@kevinsimper、@lieryan、@phemmer、@soulrebel 和 @sschepens!
1.3.1
(2015-06-21)
Bug 修复
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
,允许您指定要用于的备用 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
现在,将 Compose 与 Swarm 集群结合使用时,可以可靠地工作。传递给
build
,文件名传递给env_file
和传递给volumes
现在被视为相对于配置文件的目录,而不是docker-compose
正在磨合。在大多数情况下,这些是相同的,但如果您使用-f|--file
参数指定另一个目录中的配置文件,这是一个重大更改。现在,一个服务可以与
net: container:<service>
.volumes_from
和net: container:<service>
在解析依赖项时会考虑 entries,因此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 能够与 Docker 的新集群工具 (https://github.com/docker/swarm) Swarm 配合使用。最终,您将能够将 Compose 指向 Swarm 集群,而不是独立的 Docker 主机,并且它将在集群上运行您的容器,而无需您执行额外的工作。由于 Swarm 仍在开发中,集成过程很粗糙,许多 Compose 功能尚无法正常运行。
docker-compose run
现在有一个--service-ports
标志,用于公开给定服务上的端口。例如,这对于使用交互式调试器运行 Web 应用程序非常有用。现在,您可以使用
external_links
选项docker-compose.yml。您现在可以阻止
docker-compose up
从使用--no-build
选择。这将减少 API 调用次数并加快运行速度。如果您在使用
image
键中,Compose 将默认使用latest
标签,而不是拉取所有标签。docker-compose kill
现在支持-s
标志,允许您指定要发送到服务容器的确切信号。docker-compose.yml 现在有一个
env_file
key 的 key,类似于docker run --env-file
,允许您在单独的文件中指定多个环境变量。如果您有很多 TOOLS,或者如果您想将敏感信息排除在版本控制之外,这非常有用。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 Tab 键补全功能 - 请参阅 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。
现在可以通过使用 TLS 连接到 Docker 守护程序
DOCKER_CERT_PATH
和DOCKER_TLS_VERIFY
环境变量。有一个新的
fig port
命令,该命令输出服务的 host port binding,类似于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 Binaries现在已经与旧版本的 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 下无法启动的 bug。
- 修复了偶尔导致 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 现在在您运行
fig run
或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
现在支持 optionsfig.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
现在,当任何容器退出时,会停止所有服务- 添加了对
privileged
config fig.yml选项(感谢 @kvz! - 缩短和对齐 log 前缀
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 的Binaries。不再需要使用 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)
- 将服务链接到自身,以便 run 命令可以访问正在运行的服务。(#67)
- 更好的文档。
- 使服务依赖关系解析更可靠。(#48)
- 使用
.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)
- 修复 ports 未正确暴露的 bug (#29)。谢谢 @dustinlacewell!
0.1.0
(2014-01-16)
- 容器在每个
fig up
,确保 config 是最新的,并且fig.yml
(#2) - 加
fig scale
命令 (#9) - 用
DOCKER_HOST
环境变量来查找 Docker 守护进程,以便与官方 Docker 客户端保持一致(之前为DOCKER_URL
) (#19) - 截断 long 命令
fig ps
(#18) - 填写命令的 CLI 帮助横幅(#15、#16)
- 在以下情况下显示更友好的错误
fig.yml
缺失 (#4) - 修复 bug
fig build
日志记录 (#3) - 修复了如果某个步骤花费了很长时间而没有生成输出 (#6) 构建会超时的错误
- 修复了通过 Unix 套接字流式传输容器输出引发错误 (#7) 的错误
非常感谢 @tomstuart、@EnTeQuAk、@schickling、@aronasorman 和 @GeoffreyPlitt。
0.0.2
(2014-01-02)
- 改进文档
- 尝试连接到 Docker
tcp://localdocker:4243
以及一个 UNIX 套接字以及localhost
. - 提高
fig up
行为 - 添加确认提示
fig rm
- 加
fig build
命令
0.0.1
(2013-12-20)
初始版本。