Note that Compose 1.7.0 requires Docker Engine 1.10.0 or later for version 2 of the Compose File format, and Docker Engine 1.9.1 or later for version 1.
If you're a Mac or Windows user, the Docker Toolbox will install Compose 1.7.0 for you, alongside the latest versions of Docker Engine, Machine and Kitematic.
Alternatively, you can use the usual commands to install or upgrade:
curl -L https://github.com/docker/compose/releases/download/1.7.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
See the install docs for more install options and instructions.
Here's what's new:
docker-compose logsno longer follows log output by default. It now
matches the behaviour of
docker logsand exits after the current logs
are printed. Use
-fto get the old default behaviour.
- Booleans are no longer allows as values for mappings in the Compose file
extra_hosts). Previously this
was a warning. Boolean values should be quoted so they become string values.
- Compose now looks for a
.envfile in the directory where it's run and
reads any environment variables defined inside, if they're not already
set in the shell environment. This lets you easily set defaults for
variables used in the Compose file, or for any of the
- Added a
--remove-orphansflag to both
docker-compose downto remove containers for services that were removed
from the Compose file.
- Added a
docker-compose rmto include containers created
docker-compose run. This will become the default behavior in the next
version of Compose.
- Added support for all the same TLS configuration flags used by the
- Compose files now support the
- Added the
docker-compose logsnow shows logs for new containers that are created
after it starts.
COMPOSE_FILEenvironment variable can now contain multiple files,
separated by the host system's standard path separator (
- You can now specify a static IP address when connecting a service to a
network with the
--tailflags to the
docker-compose up, and
docker-compose startwill now start containers
in parallel where possible.
docker-compose stopnow stops containers in reverse dependency order
instead of all at once.
- Added the
docker-compose upto force it to build a new
image. It now shows a warning if an image is automatically built when the
flag is not used.
- Added the
docker-compose execcommand for executing a process in a running
docker-compose downnow removes containers created by
- A more appropriate error is shown when a timeout is hit during
using a tty.
- Fixed a bug in
docker-compose downwhere it would abort if some resources
had already been removed.
- Fixed a bug where changes to network aliases would not trigger a service
to be recreated.
- Fix a bug where a log message was printed about creating a new volume
when it already existed.
- Fixed a bug where interrupting
upwould not always shut down containers.
- Fixed a bug where
log_driverwere not properly carried over
when extending services in the v1 Compose file format.
- Fixed a bug where empty values for build args would cause file validation
Thanks @aanand, @shin-, @londoncalling, @albers, @seguins, @IlyaSkriblovsky, @cr7pt0gr4ph7, @clkao, @nubs, @moxiegirl, @AvdN, @yograterol, @TomasTomecek, @simonvanderveldt, @richardbann, @michael-k, @ltiao, @JesusTinoco, @humitos, @graingert, @flowrx, @dbonev, @bfirsh