1.20.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.20.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.6 | 18.02.0+ |
| 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.6
-
Introduced version 3.6 of the
docker-compose.ymlspecification.
This version requires to be used with Docker Engine 18.02.0 or above. -
Added support for the
tmpfs.sizeproperty in volume mappings
Compose file version 3.2 and up
- The
--build-argoption can now be used without specifying a service
indocker-compose build
Compose file version 2.3
-
Added support for
device_cgroup_rulesin service definitions -
Added support for the
tmpfs.sizeproperty in long-form volume mappings -
The
--build-argoption can now be used without specifying a service
indocker-compose build
All formats
-
Added a
--log-leveloption to the top-leveldocker-composecommand.
Accepted values aredebug,info,warning,error,critical.
Default log level isinfo -
docker-compose runnow allows users to unset the container's entrypoint -
Proxy configuration found in the
~/.docker/config.jsonfile now populates
environment and build args for containers created by Compose -
Added the
--use-aliasesflag todocker-compose run, indicating that
network aliases declared in the service's config should be used for the
running container -
Added the
--include-depsflag todocker-compose pull -
docker-compose runnow kills and removes the running container upon
receivingSIGHUP -
docker-compose psnow shows the containers' health status if available -
Added the long-form
--detachoption to theexec,runandup
commands
Bugfixes
-
Fixed
.dockerignorehandling, notably with regard to absolute paths
and last-line precedence rules -
Fixed an issue where Compose would make costly DNS lookups when connecting
to the Engine when using Docker For Mac -
Fixed a bug introduced in 1.19.0 which caused the default certificate path
to not be honored by Compose -
Fixed a bug where Compose would incorrectly check whether a symlink's
destination was accessible when part of a build context -
Fixed a bug where
.dockerignorefiles containing lines of whitespace
caused Compose to error out on Windows -
Fixed a bug where
--tls*and--hostoptions wouldn't be properly honored
for interactiverunandexeccommands -
A
seccomp:<filepath>entry in thesecurity_optconfig now correctly
sends the contents of the file to the engine -
ANSI output for
upanddownoperations should no longer affect the wrong
lines -
Improved support for non-unicode locales
-
Fixed a crash occurring on Windows when the user's home directory name
contained non-ASCII characters -
Fixed a bug occurring during builds caused by files with a negative
mtime
values in the build context
Thanks to @mnottale, @mefyl, @albers, @pantuza, @kcboschert, @jsdalton, @ghsatpute, @geigerzaehler, @garribas, @dihmuzikien, @d2s, @briandealwis and @artagnon for contributing to this release!
Integrity check
SHA-256 sum | Binary name
500f9ab56a76af04d9cd2ed1b953f8b663a9a212b9955d44536743e9200bcbd4 | docker-compose-Darwin-x86_64
3099f4087251c06e8d693877adb571365fcdf0819eeaa6ed37097978d2c50e83 | docker-compose-Linux-x86_64
587b41a75271ed37dd27b482a379844a296f92bde856cfad9068c17864c37393 | docker-compose-Windows-x86_64.exe