Skip to content


Choose a tag to compare
@shin- shin- released this 16 Nov 19:10

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.

Note that Compose 1.9.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. 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.

Here's what's new:

Breaking changes

  • When using Compose with Docker Toolbox/Machine on Windows, volume paths are
    no longer converted from C:\Users to /c/Users-style by default. To
    re-enable this conversion so that your volumes keep working, set the
    environment variable COMPOSE_CONVERT_WINDOWS_PATHS=1. Users of
    Docker for Windows are not affected and do not need to set the variable.

New Features

  • Interactive mode for docker-compose run and docker-compose exec is
    now supported on Windows platforms. Please note that the docker binary
    is required to be present on the system for this feature to work.
  • Introduced version 2.1 of the docker-compose.yml specification. This
    version requires to be used with Docker Engine 1.12 or above.
    • Added support for setting volume labels and network labels in
    • Added support for the isolation parameter in service definitions.
    • Added support for link-local IPs in the service networks definitions.
    • Added support for shell-style inline defaults in variable interpolation.
      The supported forms are ${FOO-default} (fall back if FOO is unset) and
      ${FOO:-default} (fall back if FOO is unset or empty).
  • Added support for the group_add and oom_score_adj parameters in
    service definitions.
  • Added support for the internal and enable_ipv6 parameters in network
  • Compose now defaults to using the npipe protocol on Windows.
  • Overriding a logging configuration will now properly merge the options
    mappings if the driver values do not conflict.

Bug Fixes

  • Fixed several bugs related to npipe protocol support on Windows.
  • Fixed an issue with Windows paths being incorrectly converted when
    using Docker on Windows Server.
  • Fixed a bug where an empty restart value would sometimes result in an
    exception being raised.
  • Fixed an issue where service logs containing unicode characters would
    sometimes cause an error to occur.
  • Fixed a bug where unicode values in environment variables would sometimes
    raise a unicode exception when retrieved.
  • Fixed an issue where Compose would incorrectly detect a configuration
    mismatch for overlay networks.

Thanks @aanand, @dnephin, @aeriksson, @bfirsh, @londoncalling, @ijc25, @SvenDowideit, @leonhartX, @albers, @Knetic, @johndmulhausen, @jgiannuzzi, @TomasTomecek, @staticshock, @stakodiak, @realityone, @mikedougherty, @jgsqware, @jfroche, @jamesottaway, @dbdd4us, @davidjb, @chrisclark, @allencloud, @adamchainz !