diff --git a/_config.yml b/_config.yml index 5e2998bbcd..7fe09df78a 100644 --- a/_config.yml +++ b/_config.yml @@ -23,7 +23,7 @@ latest_stable_docker_engine_api_version: "1.37" docker_ce_stable_version: "18.03" docker_ce_edge_version: "18.05" docker_ee_version: "17.06" -compose_version: "1.22.0" +compose_version: "1.23.0" machine_version: "0.14.0" distribution_version: "2.6" dtr_version: "2.5" diff --git a/compose/reference/build.md b/compose/reference/build.md index af41c55888..0bac60a39d 100644 --- a/compose/reference/build.md +++ b/compose/reference/build.md @@ -16,6 +16,7 @@ Options: --pull Always attempt to pull a newer version of the image. -m, --memory MEM Sets memory limit for the build container. --build-arg key=val Set build-time variables for services. + --parallel Build images in parallel. ``` Services are built once and then tagged, by default as `project_service`. For diff --git a/compose/reference/config.md b/compose/reference/config.md index 5292b575f2..56542663ab 100644 --- a/compose/reference/config.md +++ b/compose/reference/config.md @@ -10,10 +10,12 @@ Usage: config [options] Options: --resolve-image-digests Pin image tags to digests. - -q, --quiet Only validate the configuration, don't print - anything. + -q, --quiet Only validate the configuration – do not print anything. --services Print the service names, one per line. --volumes Print the volume names, one per line. + --hash="*" Print the service config hash, one per line. + Set "service1,service2" for a list of specified services + or use the wildcard symbol to display all services. ``` Validate and view the Compose file. diff --git a/release-notes/docker-compose.md b/release-notes/docker-compose.md index 7e370a426b..27f8bff61f 100644 --- a/release-notes/docker-compose.md +++ b/release-notes/docker-compose.md @@ -5,6 +5,80 @@ keywords: release notes, compose toc_max: 2 --- +## 1.23.0 (2018-10-30) + +### Important note + +The default naming scheme for containers created by Compose in this version +has changed from `__` to +`___`, where `` is a randomly-generated +hexadecimal string. Please make sure to update scripts relying on the old +naming scheme accordingly before upgrading. + +### Features + +- Logs for containers restarting after a crash will now appear in the output + of the `up` and `logs` commands. + +- Added `--hash` option to the `docker-compose config` command, allowing users + to print a hash string for each service's configuration to facilitate rolling + updates. + +- Added `--parallel` flag to the `docker-compose build` command, allowing + Compose to build up to 5 images simultaneously. + +- Output for the `pull` command now reports status / progress even when pulling + multiple images in parallel. + +- For images with multiple names, Compose will now attempt to match the one + present in the service configuration in the output of the `images` command. + +### Bug Fixes + +- Fixed an issue where parallel `run` commands for the same service would fail due to name + collisions. + +- Fixed an issue where paths longer than 260 characters on Windows clients would + cause `docker-compose build` to fail. + +- Fixed a bug where attempting to mount `/var/run/docker.sock` with + Docker Desktop for Windows would result in failure. + +- The `--project-directory` option is now used by Compose to determine where to + look for the `.env` file. + +- `docker-compose build` no longer fails when attempting to pull an image with + credentials provided by the ***gcloud credential helper***. + +- Fixed the `--exit-code-from` option in `docker-compose up` to always report + the actual exit code even when the watched container is not the cause of the + exit. + +- Fixed an issue that would prevent recreating a service in some cases where + a volume would be mapped to the same mountpoint as a volume declared within the Dockerfile for that image. + +- Fixed a bug that caused hash configuration with multiple networks to be + inconsistent, causing some services to be unnecessarily restarted. + +- Fixed a bug that would cause failures with variable substitution for services + with a name containing one or more dot characters. + +- Fixed a pipe handling issue when using the containerized version of Compose. + +- Fixed a bug causing `external: false` entries in the Compose file to be + printed as `external: true` in the output of `docker-compose config`. + +- Fixed a bug where issuing a `docker-compose pull` command on services + without a defined image key would cause Compose to crash. + +- Volumes and binds are now mounted in the order they are declared in the + service definition. + +### Miscellaneous + +- The `zsh` completion script has been updated with new options, and no + longer suggests container names where service names are expected. + ## 1.22.0 (2018-07-17) ### New features @@ -26,7 +100,7 @@ toc_max: 2 - Added support for extension fields in service, network, and volume configurations -### Bugfixes +### Bug Fixes - Fixed a bug that prevented deployment with some Compose files when `DOCKER_DEFAULT_PLATFORM` was set @@ -60,14 +134,14 @@ toc_max: 2 ## 1.21.2 (2018-05-03) -### Bugfixes +### Bug Fixes - Fixed a bug where the ip_range attribute in IPAM configs was prevented from passing validation ## 1.21.1 (2018-04-27) -### Bugfixes +### Bug Fixes - In 1.21.0, we introduced a change to how project names are sanitized for internal use in resource names. This caused issues when manipulating an @@ -132,7 +206,7 @@ toc_max: 2 - `docker-compose build` now supports the use of Dockerfile from outside the build context. -### Bugfixes +### Bug Fixes - Compose now checks that the volume's configuration matches the remote volume, and errors out if a mismatch is detected. @@ -203,7 +277,7 @@ toc_max: 2 - Added the long-form `--detach` option to the `exec`, `run` and `up` commands -### Bugfixes +### Bug Fixes - Fixed `.dockerignore` handling, notably with regard to absolute paths and last-line precedence rules @@ -292,7 +366,7 @@ toc_max: 2 - Bash completion should now be able to better differentiate between running, stopped and paused services -### Bugfixes +### Bug Fixes - Fixed a bug that would cause the `build` command to report a connection error when the build context contained unreadable files or FIFO objects. @@ -375,7 +449,7 @@ toc_max: 2 - Setting `stop_grace_period` in service definitions now also sets the container's `stop_timeout` -### Bugfixes +### Bug Fixes - Fixed an issue where Compose was still handling service hostname according to legacy engine behavior, causing hostnames containing dots to be cut up @@ -444,7 +518,7 @@ toc_max: 2 resources (networks, volumes, containers) without starting services. The `create` command is deprecated in favor of this new option -### Bugfixes +### Bug Fixes - Fixed a bug where `extra_hosts` values would be overridden by extension files instead of merging together @@ -496,7 +570,7 @@ toc_max: 2 - Added new CLI flag `--no-ansi` to suppress ANSI control characters in output -### Bugfixes +### Bug Fixes - Fixed a bug where nested `extends` instructions weren't resolved properly, causing "file not found" errors @@ -551,7 +625,7 @@ toc_max: 2 - Some improvements to CLI output -### Bugfixes +### Bug Fixes - Volumes specified through the `--volume` flag of `docker-compose run` now complement volumes declared in the service's definition instead of replacing @@ -603,7 +677,7 @@ toc_max: 2 - Differences in labels between the Compose file and remote network will now print a warning instead of preventing redeployment. -### Bugfixes +### Bug Fixes - Fixed a bug where service's dependencies were being rescaled to their default scale when running a `docker-compose run` command @@ -654,7 +728,7 @@ toc_max: 2 - Added support for `options` in the `ipam` section of network definitions -### Bugfixes +### Bug Fixes - Fixed a bug where paths provided to compose via the `-f` option were not being resolved properly @@ -748,7 +822,7 @@ toc_max: 2 - Added support for port range to single port in port mappings, such as `8000-8010:80`. -### Bugfixes +### Bug Fixes - `docker-compose run --rm` now removes anonymous volumes after execution, matching the behavior of `docker run --rm`. @@ -782,7 +856,7 @@ toc_max: 2 ## 1.11.2 (2017-02-17) -### Bugfixes +### Bug Fixes - Fixed a bug that was preventing secrets configuration from being loaded properly @@ -802,7 +876,7 @@ toc_max: 2 ## 1.11.1 (2017-02-09) -### Bugfixes +### Bug Fixes - Fixed a bug where the 3.1 file format was not being recognized as valid by the Compose parser @@ -822,7 +896,7 @@ toc_max: 2 - Introduced the `docker-compose top` command that displays processes running for the different services managed by Compose. -### Bugfixes +### Bug Fixes - Fixed a bug where extending a service defining a healthcheck dictionary would cause `docker-compose` to error out. @@ -832,7 +906,7 @@ toc_max: 2 ## 1.10.1 (2017-02-01) -### Bugfixes +### Bug Fixes - Fixed an issue where presence of older versions of the docker-py package would cause unexpected crashes while running Compose @@ -882,7 +956,7 @@ toc_max: 2 - Added support for the `stop_grace_period` option in service definitions. -### Bugfixes +### Bug Fixes - Colored output now works properly on Windows. @@ -909,7 +983,7 @@ toc_max: 2 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 +### New Features - Interactive mode for `docker-compose run` and `docker-compose exec` is now supported on Windows platforms. The `docker` binary @@ -936,7 +1010,7 @@ New Features - Overriding a `logging` configuration will now properly merge the `options` mappings if the `driver` values do not conflict. -Bug Fixes +### Bug Fixes - Fixed several bugs related to `npipe` protocol support on Windows.