Docker Compose发行说明

预计阅读时间:87分钟

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.ymlcompose.yaml到默认的文件名列表。

1.28.5

(2021-02-26)

虫子

  • 修复了炮击到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修复

  • 修复了SSH主机名包含前导's'/'h'时进行解析的问题,并删除了隐藏错误的安静选项(通过docker-pyump到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的支持。

  • 添加了对服务配置文件的支持。

  • 通过外壳到本地SSH客户端,将SSH连接方式更改为Docker CLI。设置COMPOSE_PARAMIKO_SSH=1环境变量以启用旧的行为。

  • 添加了禁用日志前缀的标志。

  • 添加了用于ANSI输出控制的标志。

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

Bug修复

  • 制作parallel_pull=True默认。

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

  • 接过--file定义时考虑project_dir

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

各种各样的

  • 添加了使用指标。

  • 与COMPOSE规范同步的架构。

  • 改进的故障报告,缺少必需的环境变量。

  • 被撞attrs至20.3.0。

  • 被撞more_itertools至8.6.0。

  • 被撞cryptograhy至3.2.1。

  • 被撞cffi至1.14.4。

  • 被撞virtualenv至20.2.2。

  • 撞到bcrypt3.2.0。

  • 将GitPython推送到3.1.11。

  • 被撞docker-py至4.4.1。

  • 将Python提升至3.9。

  • Linux:将Debian基础映像从扩展扩展到崩溃(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_on序列化在docker-compose config

  • 修复了某些容器​​未在其上运行时的缩放比例docker-compose up

  • driver_opts.devicelocal驱动程序启用了相对路径。

  • cpus字段允许使用的字符串。

1.27.2

(2020-09-10)

Bug修复

  • 修复了docker-compose run容器附加上的错误。

1.27.1

(2020-09-10)

Bug修复

  • docker-compose runservice.scale指定时固定。

  • 允许将driver外部网络的属性作为Swarm网络传播问题的临时解决方法。

  • 将新的内部架构版本固定3.9为默认版本。

  • 保留在“撰写”文件中配置的版本号。

1.27.0

(2020-09-07)

特征

  • 合并2.x和3.x组成格式并与COMPOSE_SPEC架构对齐。

  • 实施的服务模式ipc

  • COMPOSE_PROJECT_NAME在容器模式下传递了环境变量。

  • 使run行为与相同up

  • docker build在设置环境变量docker-compose run时使用COMPOSE_DOCKER_CLI_BUILD

  • 使用docker-py默认API版本进行引擎查询(auto)。

  • network_mode在构建时进行解析。

Bug修复

  • 不需要构建时,将忽略构建上下文路径验证。

  • 修复了通过docker-py凹凸将浮点数转换为字节的问题至4.3.1。

  • 修复了设置部署部分时的缩放错误。

  • 修复docker-py颠簸的问题setup.py

  • 修复了实验构建失败检测。

  • 修复了将上下文传播到Docker CLI的问题。

各种各样的

  • 被撞docker-py至4.3.1。

  • 被撞tox至3.19.0。

  • 被撞virtualenv至20.0.30。

  • 添加了用于文档同步的脚本。

1.26.2

(2020-07-02)

Bug修复

  • docker-py使用pip进行安装时,应将最低版本强制为4.2.2。

1.26.1

(2020-06-30)

特征

  • 碰到docker-py从4.2.1到4.2.2。

Bug修复

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

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

1.26.0

(2020-06-03)

特征

  • 增加了docker context支持。

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

  • 添加--attach-dependenciesup用于附加到依赖项的命令。

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

  • 被撞Pytest至5.3.4,并添加新版本重构的兼容性。

  • 碰到OpenSSL从1.1.1f到1.1.1g。

  • 碰到certifi从2019年11月28日至2020.4.5.1。

  • 被撞docker-py4.2.0,4.2.1。

Bug修复

  • 正确地转义了来自的值env_files

  • 与上游(docker / cli)同步compose-schemas。

  • 删除None了exec命令上的条目。

  • 添加了distro软件包以获取发行版信息。

  • 添加python-dotenv到委托.env文件处理。

  • 当通过管道传递到另一个命令时,停止在端子宽度上调整输出。

  • version属性格式错误时显示错误消息。

  • 修复了DOCKER_HOST远程时的HTTPS连接。

1.25.5

(2020-04-10)

特征

  • 将OpenSSL从1.1.1d升级到1.1.1f。

  • 添加了Compose版本3.8。

    • 将服务规模限制为字段指定的大小deploy.placement.max_replicas_per_node

1.25.4

(2020-02-03)

Bug修复

  • 修复了CI脚本,以将MacOS的最低版本强制为10.11。

  • 修复了docker-compose exec的环境文件中没有任何值的键。

1.25.3

(2020-01-23)

Bug修复

  • 修复了CI脚本,以使用Python3强制进行编译。

  • 在发行页面上更新了二进制文件的sha256。

1.25.2

(2020-01-20)

新的功能

  • Docker Compose现在允许使用COMPOSE_COMPATIBILITY环境变量的兼容性选项。

Bug修复

  • 修复了将version字段设置为无效值时导致Docker Compose崩溃的问题。当在版本字段中使用无效值时,Docker Compose现在会显示一条错误消息。

  • 修复了导致在终端外部运行命令时Docker Compose错误地渲染消息的问题。

1.25.1

(2020-01-06)

Bug修复

  • APIError在使用Unicode创建和启动容器之前,将其解码为Unicode。

  • Docker Compose丢弃com.docker.compose.filepaths具有None值的标签。当标签源自标准输入时,通常会发生这种情况。

  • 添加了OS X二进制文件作为目录,以解决由macOS Catalina二进制扫描引起的启动时间过慢的问题。

  • HOME与一起运行时,在容器模式下通过了环境变量script/run/run.sh

  • Docker Compose现在报告无法拉出的映像,但是需要构建它们。

1.25.0

(2019-11-18)

新的功能

  • 通过将CLICOLORenv变量更改为,将no-colors设置为true 0

  • 在服务标签中添加了工作目录,配置文件和环境文件。

  • 添加了ARM构建依赖关系。

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

  • 将Paramiko提升至2.6.0版。

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

  • 提升docker-py至4.1.0版。

  • 增强了对的支持requests,直到版本2.22.0。

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

  • Dockerfile增强功能,可libmusl为Alpine Linux生成二进制文件。

  • 仅拉出无法生成的图像。

  • scale现在,该属性接受0为值。

  • 在命令中添加了一个--quiet选项和一个--no-rm选项docker-compose build

  • --no-interpolatedocker-compose config命令中添加了一个选项。

  • 将适用于MacOS的OpenSSL构建从1.1.0提升到1.1.1c

  • 添加了对docker-compose.yml文件credential_spec配置选项的支持。

  • 无需提取图像即可解析摘要。

  • 升级pyyaml到版本4.2b1

  • 降低严重程度warning用于实例中down的尝试,以除去不存在的图像。

  • 在可能的情况下,必须将改进的API字段用于项目事件。

  • setup.py针对modern进行了更新pypi/setuptools,并删除了pandoc相关性。

  • 已删除Dockerfile.armhf,不再需要。

Bug修复

  • 确定容器服务的颜色,包括去除红色。

  • 修复了非ASCII字符错误(仅适用于Python 2)。

  • 将图像大小更改为十进制格式,以与Docker CLI保持一致。

  • tty 通过Python POSIX支持获得的大小。

  • 修复了相同文件的extends优化。

  • 固定的stdin_open

  • 修复了--remove-orphans在与up --no-startoption一起使用时遇到的被忽略的问题。

  • 固定docker-compose ps --all命令。

  • 修复了depends_on依赖重新创建行为。

  • 修复了docker-compose build --memory命令的bash完成。

  • 修复了docker-compose exec执行命令时发生的误导性环境变量警告。

  • 修复了中的失败检查parallel_execute_watch function

  • 修复了拉动图像后发生的竞争状况。

  • 修复了重复的安装点上的错误(现在显示配置错误消息)。

  • 修复了合并在networks部分。

  • stdin默认情况下,始终将Compose容器连接到。

  • 修复了docker-compose start当容器不可用时命令上失败的服务的显示。

1.24.1

(2019-06-24)

此版本包含较小的改进和错误修复。

1.24.0

(2019-03-28)

特征

  • 添加了对使用ssh协议连接到Docker Engine的支持。

  • 添加了一个--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的强制版本。

  • 修复了网络具有None配置时合并Compose文件的问题。

  • 修正CTRL+C通过使问题bootloader_ignore_signalspyinstaller

  • 修复SSH和代理配置问题的突出docker-py版本3.7.2

  • 修复了发行脚本和发行文档中的一些错字。

1.23.2

(2018-11-28)

Bug修复

  • 还原了1.23.0更改,该更改将随机字符串附加到所创建的容器名称上docker-compose up,从而导致可寻址性问题。

    注意:创建的容器docker-compose run将继续使用随机生成的名称,以避免在并行运行期间发生冲突。

  • 修复了dockerfile尝试在Windows上构建时某些路径会意外失败的问题。

  • 修复了构建上下文URL无法在Windows上构建的错误。

  • 修复了一个错误,该错误导致runexec命令因某些其他可接受的--host参数值而失败。

  • 修复了服务定义中的storage_optisolation键的替代未正确应用的问题。

  • 修复了一些无效的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>是随机生成的十六进制字符串。升级之前,请确保相应地依赖旧命名方案来更新脚本。

特征

  • 崩溃后重新启动的容器的日志现在将显示在uplogs命令的输出中。

  • --hashdocker-compose config命令中添加了选项,允许用户为每个服务的配置打印哈希字符串,以方便滚动更新。

  • --paralleldocker-compose build命令中添加了标志,允许Compose同时构建最多5张图像。

  • pull现在,即使并行拉出多个图像,命令的输出也会报告状态/进度。

  • 对于具有多个名称的图像,Compose现在将尝试匹配images命令输出中服务配置中存在的图像。

Bug修复

  • 修复了run由于名称冲突而导致同一服务的并行命令失败的问题。

  • 修复了Windows客户端上超过260个字符的路径会导致docker-compose build失败的问题。

  • 修复了尝试在/var/run/docker.sockWindows上使用Docker Desktop挂载会导致失败的错误。

  • --project-directory现在,Compose使用该选项来确定在哪里寻找.env文件。

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

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

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

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

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

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

  • 修复了一个错误external: false,该错误导致在Compose文件中的条目像external: true在输出中一样被打印docker-compose config

  • 修复了一个错误,即docker-compose pull在没有定义的映像密钥的情况下在服务上发出命令会导致Compose崩溃。

  • 现在,将按在服务定义中声明的顺序装入卷和绑定。

各种各样的

  • zsh完成脚本已经更新了新的选择,且不再提示,其中服务名称是预期的容器名称。

1.22.0

(2018-07-17)

新的功能

撰写格式3.7版

  • 引入了该docker-compose.yml规范的3.7版本。此版本需要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编码的撰写文件的问题

  • 修正了一个问题与双通配符(处理**中)模式.dockerignore使用时,文件docker-compose build

  • 修复了导致遗留.dockercfg文件中的auth值被忽略的错误
  • 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

  • 引入了docker-compose.yml规范的版本2.4 。此版本需要Docker Engine 17.12.0或更高版本。

  • platform在服务定义中增加了对该参数的支持。如果提供,则在执行服务的构建时也会使用该参数。

撰写文件版本2.2及更高版本

  • 在服务定义中增加了对cpu_rt_periodcpu_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用于为execrun命令生成TLS标志时使用参数解析的错误。

  • 修复了一个错误,在该错误中,使用空默认值(例如${VAR:-})进行变量替换会显示错误的警告。

  • 当Compose文件的编码与系统的编码不匹配时,提高了弹性。鼓励用户尽可能使用UTF-8。

  • 修复了一个错误,该错误使Swarm中的外部覆盖网络被Compose错误地识别为不存在,从而中断了其他有效操作。

1.20.0

(2018-03-20)

新的功能

撰写文件版本3.6

  • 引入了docker-compose.yml规范的3.6版本。此版本必须与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命令中添加了一个选项。可接受的值是debuginfowarningerrorcritical。默认日志级别为info

  • docker-compose run 现在允许用户取消设置容器的入口点

  • ~/.docker/config.json现在,在文件中找到的代理配置将填充环境并为由Compose创建的容器构建args

  • --use-aliases标记添加到中docker-compose run,指示在服务的配置中声明的网络别名应用于运行中的容器

  • --include-deps标志添加到docker-compose pull

  • docker-compose run 现在会在接收到时杀死并删除正在运行的容器 SIGHUP

  • docker-compose ps 现在显示容器的健康状态(如果有)

  • 增加了长格式--detach选项的execrunup 命令

Bug修复

  • 固定.dockerignore处理,特别是在绝对路径和最后一行优先规则方面

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

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

  • 修复了以下错误:在部分构建上下文中,Compose会错误地检查符号链接的目标位置是否可访问

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

  • 修复了一个错误,其中错误地--tls*--host选项不适合交互runexec命令

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

  • updown操作的ANSI输出不应再影响错误的行

  • 改进了对非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-depsup命令中添加了标志,以强制重新创建依赖项服务以及依赖项所有者

  • 添加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被错误地标记为不兼容的错误

  • 修复了以下错误:如果与先前容器关联的图像已被删除,则服务的重新创建将中断

  • 修复了以下错误:尝试重新创建关联服务时,更新装载目标的操作可能会破坏撰写

  • 修复了以下错误:tmpfs使用版本3.2在Compose文件中使用扩展语法声明的卷会错误地创建为匿名卷

  • 修复了类型转换错误将打印堆栈跟踪而不是正常退出的错误

  • 修复了一些与unicode处理有关的错误

  • 如果依赖项的配置未更改,则不再与依赖项所有者一起重新创建依赖项服务

  • 添加了labels对Compose文件中的字段的更好的验证。包含标量类型(数字,布尔值)的标签值现在会自动转换为字符串

1.18.0

(2017-12-18)

新的功能

撰写文件版本3.5

  • 引入了docker-compose.yml规范的3.5版。此版本需要Docker Engine 17.06.0或更高版本

  • shm_size在构建配置中增加了对参数的支持

  • isolation在服务定义中增加了对参数的支持

  • 添加了对网络,机密和配置定义的自定义名称的支持

撰写文件版本2.3

  • 添加了extra_hosts对构建配置的支持

  • 添加了对卷条目的长语法的支持,如先前以3.2格式引入的那样。使用此语法将创建装载而不是卷。

撰写文件版本2.1及更高版本

  • oom_kill_disable在服务定义中增加了对参数的支持(仅2.x)

  • 添加了对网络定义的自定义名称的支持(仅适用于2.x)

所有格式

  • 现在,在非字符串字段中使用时,从环境插值的值将转换为正确的类型。

  • 添加了对--labelin的支持docker-compose run

  • 添加了对--timeoutin的支持docker-compose down

  • 添加了对--memoryin的支持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在运行状况检查中添加了对该字段的验证

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

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

  • 该CLI现在使用明确的防止-d--timeout在一起docker-compose up

1.17.0

(2017-11-01)

新的功能

撰写文件版本3.4

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

  • 增加了支持cache_fromnetworktarget在构建配置选项

  • order在本update_config节中增加了对参数的支持

  • 添加了对使用name参数在卷定义中设置自定义名称的支持

撰写文件版本2.3

  • 增加了shm_size对构建配置中选项的支持

撰写文件版本2.x

  • 添加了对扩展字段(x-*)的支持。也适用于v3.4文件

所有格式

  • --no-startup命令中添加了新内容,使用户无需启动服务即可创建所有资源(网络,卷,容器)。create不建议使用此命令,而希望使用此新选项

Bug修复

  • 修复了extra_hosts扩展文件将覆盖值而不是将其合并在一起的错误

  • 修复了一个错误,该错误中对v3.2文件的验证将阻止使用consistency服务卷定义中的 字段

  • 修复了一个错误,当配置字段期望唯一项包含重复项时,该错误会导致崩溃

  • 修复了一个错误,该错误以不同的方式覆盖挂载会创建重复的条目,而不是覆盖原始条目

  • 修复了无法正确解析声明为列表的构建标签的错误

  • 修复了以下错误:docker-compose config如果文件包含自定义外部卷,则该输出对于某些版本无效

  • 在Windows上使用不支持的文件版本发出构建命令时,改进了错误处理

  • 修复了up同时运行命令时有时会创建具有相同名称的网络的问题。

1.16.0

(2017-08-31)

新的功能

撰写文件版本2.3

  • 引入了docker-compose.yml规范的2.3版本。此版本必须与Docker Engine 17.06.0或更高版本一起使用。

  • target在构建配置中增加了对参数的支持

  • start_period在运行状况检查配置中增加了对参数的支持

撰写文件版本2.x

  • blkio_config在服务定义中增加了对参数的支持

  • 添加了对使用name参数在卷定义中设置自定义名称的支持(不适用于版本2.0)

所有格式

  • 添加了新的CLI标志--no-ansi以抑制输出中的ANSI控制字符

Bug修复

  • 修复了extends无法正确解决嵌套指令的错误,导致“找不到文件”错误

  • 修复了.dockerignore解析的几个问题

  • 修复了启用TTY的服务的日志未正确打印并导致MemoryError异常的问题

  • 修复了UnicodeEncodeErrorPython 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修复

  • 现在,通过“现在”--volume标志指定的卷将docker-compose run补充服务定义中声明的卷,而不是替换它们

  • 修复了使用多个Compose文件会取消在Compose文件中定义的比例值的错误。

  • 修复了Compose不接受文件中credHelpers条目的问题config.json

  • 修复了以下错误:在端口3中使用多个带有端口声明的Compose文件会导致Python 3环境中的失败

  • 修复了用户环境中存在一些与代理相关的选项会阻止Compose运行的错误

  • 修复了以下问题:docker-compose config如果使用原始文件YN值,则输出将无效

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

1.14.0

(2017-06-19)

新的功能

撰写文件版本3.3

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

撰写文件版本2.2

  • 新增的服务定义下列参数:cpu_countcpu_percentcpus

撰写文件版本2.1

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

所有格式

  • 添加-u--user标志的简写docker-compose exec

  • 现在,“撰写”文件和远程网络之间的标签差异将显示警告,而不是阻止重新部署。

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)

重大变化