1.19.0
If 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.19.0/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
Breaking changes
- On UNIX platforms, interactive
run
andexec
commands now require
thedocker
CLI to be installed on the client by default. To revert
to the previous behavior, users may set theCOMPOSE_INTERACTIVE_NO_CLI
environment variable.
New features
Compose file version 3.x
- The output of the
config
command should now mergedeploy
options from
several Compose files in a more accurate manner
Compose file version 2.3
- Added support for the
runtime
option in service definitions
Compose file version 2.1 and up
- Added support for the
${VAR:?err}
and${VAR?err}
variable interpolation
syntax to indicate mandatory variables
Compose file version 2.x
- Added
priority
key to service network mappings, allowing the user to
define in which order the specified service will connect to each network
All formats
-
Added
--renew-anon-volumes
(shorthand-V
) to theup
command,
preventing Compose from recovering volume data from previous containers for
anonymous volumes -
Added limit for number of simulatenous parallel operations, which should
prevent accidental resource exhaustion of the server. Default is 64 and
can be configured using theCOMPOSE_PARALLEL_LIMIT
environment variable -
Added
--always-recreate-deps
flag to theup
command to force recreating
dependent services along with the dependency owner -
Added
COMPOSE_IGNORE_ORPHANS
environment variable to forgo orphan
container detection and suppress warnings -
Added
COMPOSE_FORCE_WINDOWS_HOST
environment variable to force Compose
to parse volume definitions as if the Docker host was a Windows system,
even if Compose itself is currently running on UNIX -
Bash completion should now be able to better differentiate between running,
stopped and paused services
Bugfixes
-
Fixed a bug that would cause the
build
command to report a connection
error when the build context contained unreadable files or FIFO objects.
These file types will now be handled appropriately -
Fixed various issues around interactive
run
/exec
sessions. -
Fixed a bug where setting TLS options with environment and CLI flags
simultaneously would result in part of the configuration being ignored -
Fixed a bug where the DOCKER_TLS_VERIFY environment variable was being
ignored by Compose -
Fixed a bug where the
-d
and--timeout
flags inup
were erroneously
marked as incompatible -
Fixed a bug where the recreation of a service would break if the image
associated with the previous container had been removed -
Fixed a bug where updating a mount's target would break Compose when
trying to recreate the associated service -
Fixed a bug where
tmpfs
volumes declared using the extended syntax in
Compose files using version 3.2 would be erroneously created as anonymous
volumes instead -
Fixed a bug where type conversion errors would print a stacktrace instead
of exiting gracefully -
Fixed some errors related to unicode handling
-
Dependent services no longer get recreated along with the dependency owner
if their configuration hasn't changed -
Added better validation of
labels
fields in Compose files. Label values
containing scalar types (number, boolean) now get automatically converted
to strings
Thanks to @DrewRomanyk, @garribas, @albers, @ilinum, @zaldaroga, @Dahca, @carlwgeorge, @ashmrtn, @tvanro, @thomascrha, @Rozelette, @mtsmfm, @johnharris85 and @d2s for contributing to this release!
Integrity check
SHA-256 sum | Binary name |
---|---|
e3c802584bf40eb3e92ac082f3d3217d940c234b80b686510ede977c90d0715e |
docker-compose-Darwin-x86_64 |
78734996d716113f9f9716d0b5064166e9475835e5000fd01b0480d19e1f7372 |
docker-compose-Linux-x86_64 |
52bb70f8909c329133239621edfab470ea8c73525ea75b138b933190f8f5a0dd |
docker-compose-Windows-x86_64.exe |