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

错误修复和增强功能

  • 恢复confighebaviour 直到--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
  • watchalpha命令中删除了子命令
  • 修复了处理接收信号时的错误

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.driverCompose 现在使用或拒绝 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_FILESenv 变量来传递 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 传递给uprun命令。

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 psdocker 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 -fCompose 现在可以检测命令后启动的新服务。
  • 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 中的布尔字段必须是truefalse。不支持已弃用的 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 撰写#9961
  • watch在模式下添加了文件删除/重命名处理。拉取请求 撰写#10386
  • 在模式中引入了一个ignore属性。watch拉取请求 撰写#10385
  • Compose 现在使用进度编写器来显示副本状态。拉取请求 撰写#10387
  • -p更新了/标志的参考文档--project-name。修复了 docs#16915compose-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 现在支持stoprm命令的试运行模式。拉取请求 撰写#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
  • 重命名convertconfig以与 Compose V1 UX 保持一致。拉取请求 撰写#10214
  • Compose 现在将代理配置作为构建参数传递。修复了 撰写#8797
  • compose up修复了忽略不是由 Compose 创建的容器的解析问题。修复了 撰写#10162
  • 修复了日志格式化程序初始化中的 goroutine 泄漏。修复了 撰写#10157
  • 修复了当所有正在运行的容器停止时撰写日志不会退出的问题。拉取请求 撰写#10181
  • 修复了文档以反映docker compose psdocker ps.拉取请求 撰写#10195
  • 修复了找不到远程 Buildx 驱动程序的问题。修复了 撰写#9893
  • 改进了重新创建服务容器时的日志记录。拉取请求 撰写#10236
  • 修复了 Compose 现在仅等待与等待条件有关的容器的问题。修复了 撰写#10200
  • Compose 现在可以防止分配给 nil 映射中的条目。修复了 撰写#10244
  • 添加了用于 Cucumber 测试的专用 GitHub Action 工作流程。拉取请求 撰写#10165
  • 在紧凑日志模式下切换时清理了 TUI 行。修复了 撰写#10201
  • 添加了倾斜观察器以检测观察模式下的代码更改。拉取请求 撰写#10218
  • Compose 现在支持命令的空运行模式kill。修复了 撰写#10210
  • pauseCompose 现在支持命令 的试运行模式。修复了 compose#10217
  • cpCompose 现在支持命令 的试运行模式。修复了 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 映像构建期间使用纯输出。修复了 撰写#10020
  • COMPOSE_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#8756docs#15936
  • 修复了缺少的支持deploy.reservation.memory。修复了 撰写#9902
  • 修复了一个错误,以防止使用argCOMPOSE_PROFILES时使用--profile。修复了 撰写#9895
  • 修复了一个错误,以防止在依赖将构建此映像的服务时拉取服务的映像。修复了 撰写#9983
  • 修复了找不到容器编号标签时的解析问题。修复了 撰写#10004
  • DOCKER_DEFAULT_PLATFORMCompose 现在使用未定义时定义的平台值service.platform。修复了 撰写#9889
  • 删除了已弃用的依赖项gotest.toolsv2 的使用。拉取请求 撰写#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日

安全

有关完整的更改日志或其他信息,请查看 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##9806compose##9746compose##9704compose##9294
  • docker compose build修复了一个错误以确保使用新图像。修复 compose#9856
  • DOCKER_DEFAULT_PLATFORM修复了未设置时的跨架构构建。修复 compose#9864
  • 修复了使用时的间歇性冲突错误depends_on。修复 compose#9014
  • CMD当入口点被覆盖时清除服务。修复 compose#9622
  • 未定义时配置默认构建器导出build.platforms。修复 compose#9856
  • 修复了一个错误,以通过 DOCKER_DEFAULT_PLATFORM 或属性优先保留定义的平台service.platform。修复 compose#9864
  • 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
  • 将新加载的环境变量应用到“Doc​​kerCli”和“APIClient”。修复 compose#9210
  • 仅尝试启动 上的指定服务compose start [services]。修复 compose#9796 compose#9807
  • 为构建的图像添加标签以进行可靠的清理down。修复 compose#9655

有关完整的更改日志或其他信息,请查看 Compose 存储库 2.11.0 版本页面

2.10.2

2022-08-26

错误修复和增强功能

有关完整的更改日志或其他信息,请查看 Compose 存储库 2.10.2 版本页面

2.10.1

2022-08-24

更新

错误修复和增强功能

  • 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

新的

  • 将新加载的环境变量应用于DockerCliAPIClient。修复 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#9705compose#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 存储库 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 存储库 2.8.0 版本页面

2.7.0

2022-07-20

新的

  • 在构建步骤中添加了对环境机密的支持。修复 compose#9606

更新

错误修复和增强功能

  • 网络:防止由于重复名称而导致的问题。修复 moby/moby#18864
  • 修复了关闭网络名称compose upcompose 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
  • CustomLabelsbuild.go:添加了初始化地图 if 的修复nil
  • 添加了新目标以在运行 e2e 测试之前构建 Compose 二进制文件。
  • CI:发布了在文档存储库上打开 PR 并包含最新更改的工作流程。
  • e2e:添加了ps.
  • e2e:拆分暂停测试并添加更多案例。
  • e2e:添加更多开始/停止测试用例。

有关完整的更改日志或其他信息,请查看 Compose 存储库 2.7.0 版本页面

2.6.1

2022-06-23

新的

更新

  • 升级: 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.cpusdeploy.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 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: never2) 忽略具有现有映像和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_NAMECompose 命令现在考虑环境变量的值。修复 #9316
  • compose down修复了在未启动任何服务或未删除资源的情况下执行命令时返回错误的问题。错误是由于命令尝试删除不存在的默认网络造成的。修复 #9333
  • 在构建部分引入了对cache_fromcache_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.0requirements-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)。

  • 向本机构建器添加了缺少的构建标志:platformisolationextra_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 输出控制标志。

  • buildDocker Compose 现在在构建映像时使用本机 Docker CLI 的命令。设置COMPOSE_DOCKER_CLI_BUILD=0环境变量以禁用此功能。

Bug修复

  • parallel_pull=True默认制作。

  • 恢复了非集群模式下配置的警告。

  • --file定义时考虑到project_dir.

  • 修复了 上的服务附加错误compose up

各种各样的

  • 添加了使用指标。

  • 与 COMPOSE 规范同步的架构。

  • 改进了缺少强制环境变量的故障报告。

  • 升至attrs20.3.0。

  • 升至more_itertools8.6.0。

  • 升至cryptograhy3.2.1。

  • 升至cffi1.14.4。

  • 升至virtualenv20.2.2。

  • 升至bcrypt3.2.0。

  • 将 GitPython 升级到 3.1.11。

  • 升至docker-py4.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_nodedocker-compose config.

  • 修复depends_ondocker-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-py4.3.1。

  • 升至tox3.19.0。

  • 升至virtualenv20.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-py4.2.2。

Bug修复

  • docker-py使用 pip 安装时强制使用4.2.1 作为最低版本。

  • 修复了非 Docker 端点的上下文加载。

1.26.0

(2020-06-03)

特征

  • 添加了docker context支持。

  • 将缺少的测试依赖项添加ddtsetup.py.

  • 添加--attach-dependencies到用于附加到依赖项的命令up

  • 允许与COMPOSE_COMPATIBILITY环境变量兼容的选项。

  • 升级Pytest到 5.3.4 并添加与新版本的重构兼容性。

  • 从 1.1.1f升至OpenSSL1.1.1g。

  • certifi从 2019.11.28跃升至 2020.4.5.1。

  • 从 4.2.0升至docker-py4.2.1。

Bug修复

  • 来自 的正确转义值env_files

  • 与上游(docker/cli)同步撰写模式。

  • 删除了Noneexec 命令上的条目。

  • 添加了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_COMPATIBILITYDocker 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 设置为 true 0

  • 将工作目录、配置文件和环境文件添加到服务标签。

  • 添加了 ARM 构建依赖项。

  • 添加了 BuildKit 支持(使用DOCKER_BUILDKIT=1COMPOSE_DOCKER_CLI_BUILD=1)。

  • 将 Paramiko 提升至版本 2.6.0。

  • 添加了以下标签:docker-compose:latestdocker-compose:<version>-alpinedocker-compose:<version>-debian

  • 提升docker-py至4.1.0版本。

  • 增强了对 的支持requests,最高版本为 2.22.0。

  • 删除了 上的空标签build:cache_from

  • Dockerfilelibmusl为 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 的支持。

  • 添加--paralleldocker build的选项bashzsh完成。

Bug修复

  • 修复了尝试从私有注册表中提取映像时 Compose 无法正确处理某些有效凭证助手的错误。

  • docker-compose start修复了创建容器之前的输出具有误导性的问题。

  • Compose 将不再接受来自环境文件的变量名称中的空格。这与 Docker CLI 行为相匹配。

  • 如果服务尝试在卷部分声明重复的挂载点,Compose 现在将报告配置错误。

  • 修复了 Compose 容器化版本的问题,该问题阻止用户在run或启动的交互式会话期间写入标准输入exec

  • 启动的一次性容器run不再采用服务的重启策略,而是设置为永不重启。

  • 修复了导致某些容器事件未出现在命令输出中的问题docker-compose events

  • 丢失图像将不再停止docker-compose down命令的执行。现在改为显示警告。

  • virtualenvmacOS 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-directoryCompose 现在使用该选项来确定在何处查找.env文件。

  • docker-compose build尝试使用gcloud 凭据助手提供的凭据提取映像时不再失败。

  • 修复了--exit-code-from选项以docker-compose up始终报告实际的退出代码,即使所监视的容器不是退出的原因。

  • 修复了在某些情况下无法重新创建服务的问题,其中卷将映射到与该映像的 Dockerfile 中声明的卷相同的安装点。

  • 修复了导致多个网络的哈希配置不一致,导致某些服务不必要重启的错误。

  • 修复了一个错误,该错误会导致名称包含一个或多个点字符的服务的变量替换失败。

  • 修复了使用容器化版本的 Compose 时的管道处理问题。

  • 修复了导致external: falseCompose 文件中的条目打印external: truedocker-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 文件的问题

  • 修复了使用时处理文件中的双通配符 ( **) 模式的问题.dockerignoredocker-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 标志时参数解析的错误。execrun

  • 修复了用空默认值(例如${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现在显示容器的健康状态(如果有)

  • --detachexec,runup 命令添加了长格式选项

Bug修复

  • 修复了.dockerignore处理,特别是关于绝对路径和最后一行优先规则

  • 修复了使用 Docker For Mac 连接到引擎时 Compose 会进行代价高昂的 DNS 查找的问题

  • 修复了 1.19.0 中引入的错误,该错误导致 Compose 不遵循默认证书路径

  • 修复了 Compose 在构建上下文的一部分时错误地检查符号链接的目标是否可访问的错误

  • 修复了.dockerignore包含空白行的文件导致 Compose 在 Windows 上出错的错误

  • 修复了交互和命令无法正确执行--tls*和选项的错误--hostrunexec

  • seccomp:<filepath>配置中的条目现在security_opt可以正确地将文件的内容发送到引擎

  • up和操作的ANSI 输出down不应再影响错误的行

  • 改进了对非 unicode 语言环境的支持

  • 修复了当用户的主目录名称包含非 ASCII 字符时在 Windows 上发生的崩溃

  • mtime 修复了构建期间由构建上下文中具有负值的文件引起的错误

  • 修复了流式传输构建进度时的编码错误

1.19.0

(2018-02-07)

重大变化

  • 在 UNIX 平台上,交互式runexec命令现在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

撰写文件版本 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:ZCompose 认为端口语法无效的错误

  • 修复了 CLI 日志记录导致出现重复消息和不雅输出的问题

  • stop_grace_period修复了使用多个 Compose 文件时导致被忽略的问题

  • docker-compose images修复了使用未标记图像时导致崩溃的错误

  • 修复了有效${VAR:-}语法会导致 Compose 出错的错误

  • 修复了env_file使用 UTF-8 BOM 的条目被错误读取的错误

  • 修复了丢失秘密文件会在其位置生成空目录的错误

  • 修复了 CLI 错误处理程序中的字符编码问题

  • test添加了健康检查中字段的验证

  • subnet添加了对IPAM 配置中字段的验证

  • volumes在服务定义中使用长语法时添加了属性验证

  • CLI 现在明确禁止在中一起使用-d和 。--timeoutdocker-compose up

1.17.0

(2017-11-01)

新功能

撰写文件版本 3.4

  • 引入了规范的 3.4 版本docker-compose.yml。该版本需要与 Docker Engine 17.06.0 或更高版本一起使用。

  • 添加了对构建配置中的cache_fromnetwork和选项的支持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修复了如果使用原始文件YN值则输出无效的问题

  • up修复了阻止在 Windows Engine 上先前创建的堆栈上进行操作的问题。

1.14.0

(2017-06-19)

新功能

撰写文件版本 3.3

  • 引入了规范的 3.3 版本docker-compose.yml。该版本需要与 Docker Engine 17.06.0 或更高版本一起使用。注意:credential_specconfigs键仅适用于 Swarm 服务,并且将被 Compose 忽略

撰写文件版本 2.2

  • 在服务定义中添加了以下参数:cpu_count, cpu_percent,cpus

撰写文件版本 2.1

  • 添加了对构建标签的支持。 2.2 和 3.3 格式也提供此功能。

所有格式

  • 添加了标志-u的简写--userdocker-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 upscale此文件格式禁用该命令

撰写文件版本 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-fromwith会失败的错误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-exitin时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修复了如果项目声明匿名卷,则的输出将无效的错误

  • 变量插值现在可以正确出现在secretsCompose 文件的部分中

  • 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_PATHS0、、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 execdocker

  • 引入了规范的 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 现在默认使用npipeWindows 上的协议。

  • 如果值不冲突,覆盖logging配置现在将正确合并映射。optionsdriver

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 Stackdocker-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 createdocker-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 文件中映射的值(对于键environmentlabelsextra_hosts)。以前这是一个警告。布尔值应加引号,以便它们成为字符串值。

新功能

  • 现在,Compose 在运行的目录中查找.env文件,并读取其中定义的任何环境变量(如果尚未在 shell 环境中设置)。这使您可以轻松设置 Compose 文件中使用的变量或任何COMPOSE_*DOCKER_*变量的默认值。

  • --remove-orphans向两者添加了一个标志docker-compose updocker-compose down以删除从 Compose 文件中删除的服务的容器。

  • 添加了一个--all标志以docker-compose rm包含由 . 创建的容器docker-compose run。这将成为下一版本 Compose 中的默认行为。

  • 添加了对客户端使用的所有相同 TLS 配置标志的支持docker--tls--tlscert--tlskey等。

  • 撰写文件现在支持tmpfsshm_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 updocker-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
    
  • 如果您使用新的文件格式,您现在可以指定 abuild和key。将构建图像并使用您指定的名称对其进行标记,同时将尝试拉取它。imagedocker-compose builddocker-compose pull

  • 有一个新events命令用于监视应用程序中的容器事件,非常类似于docker events.这是在 Compose 之上构建工具的一个很好的原语,用于在发生特定事件(例如容器启动和停止)时执行操作。

  • 有一个新depends_on选项用于指定服务之间的依赖关系。这会强制执行启动顺序,并确保当您在 docker-compose up SERVICE具有依赖项的服务上运行时,这些服务也会启动。

新功能

  • 添加了一个新命令config,用于在插入变量、解析相对路径以及合并多个文件和extends.

  • 添加了一个新命令create,用于在不启动容器的情况下创建容器。

  • 添加了一个新命令来停止并删除在单个命令中down创建的所有资源 。up

  • 添加了对配置选项的支持cpu_quota

  • 添加了对配置选项的支持stop_signal

  • 如果没有修改任何容器,命令startrestartpause和现在会退出并显示错误状态代码。unpause

  • 添加了一个新--abort-on-container-exit标志,一旦第一个容器退出,就会停止所有容器并退出upup

  • 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修复了使用默认网络驱动程序时导致打印为网络驱动程序名称的错误。

  • 修复了使用字符串形式dnsordns_search会导致错误的错误。

  • 修复了容器在重新启动状态时报告为“Up”的错误。

  • 修复了 DOCKER_CERT_PATH 未正确设置时出现的令人困惑的错误消息。

  • 修复了如果使用非标准日志记录驱动程序(或根本没有),附加到容器将失败的错误。

1.5.2

(2015-12-03)

  • environment修复了一个错误,该错误破坏了和env_filewith 的使用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 更改为 usingup时会出现“需要构建服务”错误的错误。imagebuild

  • 修复了可能导致某些终端上并行操作输出不正确的错误。

  • volumes_from修复了当 a 的模式更改时阻止重新创建容器的错误。

  • 修复了 1.5.0 中非 utf-8 unicode 字符会导致 崩溃的up问题logs

  • 修复了 1.5.0 中的一个回归问题:当命令由于与 docker 守护进程通信的 HTTP 超时而失败时,Compose 将使用成功退出状态代码。

  • 修复了 1.5.0 中的回归,该回归name被接受为有效服务选项,该选项将覆盖服务的实际名称。

  • 使用--x-networkingCompose 时不再将主机名设置为容器名称。

  • 使用 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

主要特点

新功能

  • 您现在可以选择将模式传递给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 pausedocker-compose unpause已实施,类似于docker pausedocker unpause

  • 当用于extends从同一 Compose 文件中的另一个服务复制配置时,可以省略该file选项。

  • Compose 可以作为 Docker 映像安装和运行。这是一个实验性功能。

Bug修复

  • log_driverDocker 守护程序支持的选项的所有值现在都受 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修复

  • 某些配置更改(特别是对linksvolumes_from和 的 更改net)未正确触发容器重新创建作为 的一部分 docker-compose up
  • docker-compose up <service>显示所有服务的日志,而不仅仅是指定的服务。
  • 具有自定义容器名称的容器显示在日志中,而 service_number不是其自定义容器名称。
  • 扩展服务时,有时即使配置没有更改,也会重新创建容器。

1.4.0

(2015-08-04)

  • 默认情况下,docker-compose up现在只为自创建以来配置已更改的服务重新创建容器。这将为许多应用程序带来显着的加速。

    --x-smart-recreateCompose 1.3.0 中引入此功能的实验性标志已被删除,并且--force-recreate添加了一个标志,供您在需要重新创建所有内容时使用。

  • 现在,Compose 的几个命令 - scalestop和- 对多个容器并行执行操作,而不是按顺序执行,这将在较大的应用程序上运行得更快。killrm

  • 您现在可以使用 为服务容器指定自定义名称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,允许您指定要与 一起使用的备用 Dockerfile build
  • labels,例如docker run --labels,允许您将自定义元数据添加到容器。
  • extra_hosts,例如docker run --add-host,允许您将条目添加到容器的/etc/hosts文件中。
  • pid: host,例如docker run --pid=host,允许您重用与主机相同的 PID 命名空间。
  • cpuset与 类似docker run --cpuset-cpus,可让您指定允许在哪些 CPU 中执行。
  • read_only,例如docker run --read-only,允许您将容器的文件系统挂载为只读。
  • security_optdocker 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-tdocker 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_searchcap_addcap_drop和选项,类似于、、cpu_shares和选项。restartdocker 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 upfig runfig pull从不安全的注册表中提取的选项。
  • 修复了fig runJenkins 中不显示输出的问题。
  • 修复了 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_PATHDOCKER_TLS_VERIFY环境变量使用 TLS 连接到 Docker 守护程序。

  • 有一个新fig port命令可以输出服务的主机端口绑定,其方式与docker port.

  • 有一个新fig pull命令可以提取服务的最新映像。

  • 有一个新fig restart命令可以重新启动服务的容器。

  • Fig 通过在服务名称后附加一个数字来创建多个服务容器。例如,db_1db_2。为了方便起见,Fig 现在将为第一个容器提供服务名称的别名。例如,db

    此链接别名也是有效的主机名并添加到其中,/etc/hosts以便您可以使用其主机名连接到链接的服务。例如,您可以直接使用主机名和端口,而不是解析环境变量DB_PORT_5432_TCP_ADDR和。DB_PORT_5432_TCP_PORTdb5432

  • 卷定义现在支持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和选项。workdirfig.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)

初始发行。