1.18.0-rc2
Pre-releaseIf you're a Mac or Windows user, the best way to install Compose and keep it up-to-date is Docker for Mac and Windows.
Docker for Mac and Windows will automatically install the latest version of Docker Engine for you.
Alternatively, you can use the usual commands to install or upgrade Compose:
curl -L https://github.com/docker/compose/releases/download/1.18.0-rc2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
See the install docs for more install options and instructions.
Compose file format compatibility matrix
Compose file format | Docker Engine |
---|---|
3.3 – 3.5 | 17.06.0+ |
3.0 – 3.2 | 1.13.0+ |
2.3 | 17.06.0+ |
2.2 | 1.13.0+ |
2.1 | 1.12.0+ |
2.0 | 1.10.0+ |
1.0 | 1.9.1+ |
Changes
New features
Compose file version 3.5
-
Introduced version 3.5 of the
docker-compose.yml
specification.
This version requires to be used with Docker Engine 17.06.0 or above -
Added support for the
shm_size
parameter in build configurations -
Added support for the
isolation
parameter in service definitions -
Added support for custom names for network, secret and config definitions
Compose file version 2.3
-
Added support for
extra_hosts
in build configuration -
Added support for the long syntax for volume entries, as previously
introduced in the 3.2 format. Note that using this syntax will create
mounts instead of volumes.
Compose file version 2.1 and up
-
Added support for the
oom_kill_disable
parameter in service definitions
(2.x only) -
Added support for custom names for network definitions (2.x only)
All formats
-
Values interpolated from the environment will now be converted to the
proper type when used in non-string fields. -
Added support for
--label
indocker-compose run
-
Added support for
--timeout
indocker-compose down
-
Added support for
--memory
indocker-compose build
-
Setting
stop_grace_period
in service definitions now also sets the
container'sstop_timeout
Bugfixes
-
Fixed an issue where Compose was still handling service hostname according
to legacy engine behavior, causing hostnames containing dots to be cut up -
Fixed a bug where the
X-Y:Z
syntax for ports was considered invalid
by Compose -
Fixed an issue with CLI logging causing duplicate messages and inelegant
output to occur -
Fixed a bug where the valid
${VAR:-}
syntax would cause Compose to
error out -
Fixed a bug where
env_file
entries using an UTF-8 BOM were being read
incorrectly -
Fixed a bug where missing secret files would generate an empty directory
in their place -
Added validation for the
test
field in healthchecks -
Added validation for the
subnet
field in IPAM configurations -
Added validation for
volumes
properties when using the long syntax in
service definitions -
The CLI now explicit prevents using
-d
and--timeout
together
indocker-compose up
Thanks to @garribas, @DrewRomanyk, @summergirl21, @AlexeyRokhin, @smiller123, @andyneff, @reutsharabani, @NikitaVlaznev, @mtsmfm, @jbarciauskas, @edsrzf and @albers for contributing to this release!
Integrity check
SHA-256 sum | Binary name |
---|---|
75524159716f6f3bb497bffa8dfabc0434a05791464b5a152e1f91df228fb42a |
docker-compose-Darwin-x86_64 |
d0e1ba02c67d83c7d1126eed4573d8b0063b9c07cdcea513092e6236ac2119c4 |
docker-compose-Linux-x86_64 |
1ffd46e90b39f27e256496b5f7128487099ed026784dc0777ec1bd60d7ac21e4 |
docker-compose-Windows-x86_64.exe |