Skip to content

@shin- shin- released this Jun 19, 2017 · 1260 commits to master since this release

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`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.

Compose file format compatibility matrix

Compose file format Docker Engine
3.3 17.06.0+
3.0 – 3.2 1.13.0+
2.2 1.13.0+
2.1 1.12.0+
2.0 1.10.0+
1.0 1.9.1+


New features

Compose file version 3.3

  • Introduced version 3.3 of the docker-compose.yml specification.
    This version requires to be used with Docker Engine 17.06.0 or above.
    Note: the credential_spec and configs keys only apply to Swarm services
    and will be ignored by Compose

Compose file version 2.2

  • Added the following parameters in service definitions: cpu_count,
    cpu_percent, cpus

Compose file version 2.1

  • Added support for build labels. This feature is also available in the
    2.2 and 3.3 formats.

All formats

  • Added shorthand -u for --user flag in docker-compose exec

  • Differences in labels between the Compose file and remote network
    will now print a warning instead of preventing redeployment.


  • Fixed a bug where service's dependencies were being rescaled to their
    default scale when running a docker-compose run command

  • Fixed a bug where docker-compose rm with the --stop flag was not
    behaving properly when provided with a list of services to remove

  • Fixed a bug where cache_from in the build section would be ignored when
    using more than one Compose file.

  • Fixed a bug where override files would not be picked up by Compose if they
    had the .yaml extension

  • Fixed a bug on Windows Engine where networks would be incorrectly flagged
    for recreation

  • Fixed a bug where services declaring ports would cause crashes on some
    versions of Python 3

  • Fixed a bug where the output of docker-compose config would sometimes
    contain invalid port definitions

Thanks to @AlexeyRokhin, @ColinHebert, @eliat123, @albers, @wrfly, @swoopla, @mengskysama, @londoncalling, @friism and @brainnwaveDuncan for contributing to this release!

Assets 6
You can’t perform that action at this time.