Releases: docker/compose
v2.36.0
What's Changed
π You can now use external binaries as service provider to extend Compose behaviour. For more information about creating your own plugin check the documentation
β¨ Improvements
- Introduce
networks.interface_name
by @ndeloof in #12771 - Add support for
COMPOSE_PROGRESS
env variable by @AnvarU in #12769 - Document extensibility using service.provider and open provider to external binaries by @ndeloof in #12777
- Introduce build
--check
by @ndeloof in #12765
π Fixes
- Build: write
--print
output to stdout by @emersion in #12756 - Fix: concurrent map writes when pulling by @skanehira in #12752
- Fix support for remote absolute path by @ndeloof in #12786
- Fix collect image digests for service images built by bake by @ndeloof in #12784
- Enable services implicitly declared by a service:xx build dependency by @ndeloof in #12785
- Fix config
--variables
not honoring the--format
flag by @alessio-perugini in #12809
π§ Internal
- Remove support of Synchronize File Shares integration with Docker Desktop by @glours in #12763
- Display proper event message for provider services on up and down by @glours in #12788
- E2e test for start_interval by @ndeloof in #12795
- Document behavior on missing extension by @ndeloof in #12802
βοΈ Dependencies
- Build(deps): bump github.com/docker/cli from
28.1.0+incompatible
to28.1.1+incompatible
by @dependabot in #12761 - Build(deps): bump github.com/docker/docker from
28.1.0+incompatible
to28.1.1+incompatible
by @dependabot in #12759 - Build(deps): bump google.golang.org/grpc from
1.71.1
to1.72.0
by @dependabot in #12760 - Build(deps): bump github.com/containerd/containerd/v2 from
2.0.4
to2.0.5
by @dependabot in #12758 - Bump compose-go to
v2.6.1
by @glours in #12766 - Bump compose-go to
v2.6.2
by @glours in #12810 - Build(deps): bump github.com/moby/buildkit from
0.21.0
to0.21.1
by @dependabot in #12796 - Build(deps): bump golang.org/x/sync from
0.13.0
to0.14.0
by @dependabot in #12805 - Build(deps): bump golang.org/x/sys from
0.32.0
to0.33.0
by @dependabot in #12804 - Build(deps): bump go.uber.org/mock from
0.5.1
to0.5.2
by @dependabot in #12792
New Contributors
- @skanehira made their first contribution in #12752
- @AnvarU made their first contribution in #12769
- @alessio-perugini made their first contribution in #12809
Full Changelog: v2.35.1...v2.36.0
v2.35.1
What's Changed
π Fixes
π§ Internal
- CI(bin-image): free disk space by @crazy-max in #12732
- Fix zizmor security alerts on GHA workflows by @glours in #12737
- Chore: make function comment match function name by @dufucun in #12748
- Migrate to use github.com/moby/go-archive by @thaJeztah in #12716
βοΈ Dependencies
- Build(deps): bump github.com/moby/buildkit from
0.20.1
to0.20.2
by @dependabot in #12667 - Build(deps): bump google.golang.org/grpc from
1.71.0
to1.71.1
by @dependabot in #12691 - Build(deps): bump go.uber.org/mock from
0.5.0
to0.5.1
by @dependabot in #12720 - Build(deps): bump golang.org/x/crypto from
0.32.0
to0.35.0
by @dependabot in #12745 - Bump buildkit
v0.21.0
, buildxv0.23.0
by @thaJeztah in #12754 - Downgrade go-difflib and go-spew to tagged releases by @thaJeztah in #12755
- Bump github.com/docker/docker, github.com/docker/cli
v28.1.0
by @thaJeztah in #12738
New Contributors
Full Changelog: v2.35.0...v2.35.1
v2.35.0
What's Changed
π 1st implementation of external services feature to support Docker Model Runner in Compose by @ndeloof in #12692
β¨ Improvements
- Set
$PWD
(may not be supported on Windows) by @ndeloof in #12643 - Introduce config
--no-env-resolution
by @ndeloof in #12665 - Introduce
build --print
to dump equivalent bakefile by @ndeloof in #12675 - Feat(run): Add
--quiet
and--quiet-build
options for therun
command by @idsulik in #12685 - Introduce
volume.type=image
by @ndeloof in #12725
π Fixes
- Fix support for secret set by env inside included file by @ndeloof in #12635
- Fix edge-case bug checking path prefix in watch for bind mount volumes by @matiboux in #12640
- Run only loads required service env_f 10000 ile and ignores others by @ndeloof in #12645
- Fixed support for
depends_on.restart
inup
andrestart
commands by @ndeloof in #12649 - Bake parses "${}" in DockerfileInline as a variable by @ndeloof in #12664
- Fix(secrets): Reverted secrets file mode 440 -> 444 by @idsulik in #12666
- Fix scale completion by @ndeloof in #12672
- Fix: replace
docker-compose.yml
withcompose.yaml
by @k-kbk in #12680 - Include implicit build dependencies in build command by @ndeloof in #12683
- Capture git fetch output when debug output is enabled by @ndeloof in #12719
- Mount API is not strictly equivalent to bind by @ndeloof in #12722
π§ Internal
- Test commandName subcommand order by @maxproske in #12535
- Set watch option --prune=true as default by @remcokranenburg in #12650
- Plugin Docker Desktop Model Runner check by @glours in #12718
- pkg/compose: implement Export using atomicwriter by @thaJeztah in #12715
- Style: refactor Desktop client for readability and maintainability by @Saracomethstein in #12723
βοΈ Dependencies
- Build(deps): bump github.com/docker/buildx from
0.21.2
to0.21.3
by @dependabot in #12646 - Build(deps): bump github.com/containerd/containerd/v2 from
2.0.3
to2.0.4
by @dependabot in #12647 - Bump docker & cli
v28.0.4
and buildxv0.22.0
by @ndeloof in #12674 - Bump golangci-lint to version
v2.0.2
by @glours in #12689 - Bump golang to
1.23.8
by @glours in #12698 - Update secret detector to fix vulnerability https://github.com/golang⦠by @sigi-glovebox in #12707
- Build(deps): bump golang.org/x/sys from
0.31.0
to0.32.0
by @dependabot in #12713 - Build(deps): bump golang.org/x/sync from
0.12.0
to0.13.0
by @dependabot in #12712 - Build(deps): bump github.com/compose-spec/compose-go/v2 from
2.5.1-0.20250409070949-8e1a035095ca
to2.6.0
by @dependabot in #12729
New Contributors
- @matiboux made their first contribution in #12640
- @k-kbk made their first contribution in #12680
- @sigi-glovebox made their first contribution in #12707
- @Saracomethstein made their first contribution in #12723
Full Changelog: v2.34.0...v2.35.0
v2.34.0
What's Changed
β¨ Improvements
- Support refresh pull policy by @ndeloof in #12568
- Introduced
include
to filter files considered bywatch
by @ndeloof in #12584 - Introduced
--env-from-file
indocker compose run
command by @ndeloof in #12626 - Make
publish
a regular command of Compose by @glours in #12629
π Fixes
- Build: only print COMPOSE_BAKE recommendation when disabled by @emersion in #12572
- Improve message suggesting using bake by @glours in #12612
- Fixed service: reference in additional_contexts for builds without bake by @ndeloof in #12582
- Block the publication of an OCI artifact if one or more services contain only a build section by @glours in #12597
- Display the location of OCI or GIT Compose stack download by @glours in #12595
- Refuse to publish compose file with local include by @ndeloof in #12600
publish
reject compose file with bind mounts by @ndeloof in #12601- Display interpolation variables and their values when running a remote stack by @glours in #12604
- Publish compose file with required siblings used by
extends
by @ndeloof in #12606 - Add warning message when a remote configuration include an another remote config by @glours in #12610
- Only load env_file after services have been selected by @ndeloof in #12611
- Deprecate --y, prefer --yes by @ndeloof in #12623
- Use Defang secret-detector to identify potential secret leaks before publishing OCI artifacts by @glours in #12620
π§ Internal
- Link to configuration file docs by @andrew-kramer in #12559
- Otel attribute to track builder implementation selected by @ndeloof in #12586
- Test version command by @maxproske in #12576
- Implement extends.file replace without yqlib by @ndeloof in #12615
- Add
cli.isatty
attribute to spans generated by compose by @landism in #12630 - Condense output of
compose top
by @dmke in #12628
βοΈ Dependencies
- Require go
1.23
|1.24
(stable) by @ndeloof in #12571 - Build(deps): bump tags.cncf.io/container-device-interface from 0.8.0 to 0.8.1 by @dependabot in #12583
- Build(deps): bump github.com/google/go-cmp from
0.6.0
to0.7.0
by @dependabot in #12578 - Build(deps): bump github.com/docker/cli from
28.0.0+incompatible
to28.0.1+incompatible
by @dependabot in #12590 - Build(deps): bump github.com/docker/docker from
28.0.0+incompatible
to28.0.1+incompatible
by @dependabot in #12591 - Build(deps): bump github.com/docker/buildx from
0.21.1
to0.21.2
by @dependabot in #12598 - Build(deps): bump github.com/opencontainers/image-spec from
1.1.0
to1.1.1
by @dependabot in #12599 - Build(deps): bump golang.org/x/sync from
0.11.0
to0.12.0
by @dependabot in #12607 - Build(deps): bump google.golang.org/grpc from
1.70.0
to1.71.0
by @dependabot in #12603 - Build(deps): bump golang.org/x/sys from
0.30.0
to0.31.0
by @dependabot in #12608 - Build(deps): bump github.com/moby/buildkit from
0.20.0
to0.20.1
by @dependabot in #12609 - Build(deps): bump tags.cncf.io/container-device-interface from
0.8.1
to1.0.0
by @dependabot in #12617 - Bump compose-go to version
v2.4.9
by @glours in #12633
New Contributors
- @emersion made their first contribution in #12572
- @andrew-kramer made their first contribution in #12559
- @landism made their first contribution in #12630
- @dmke made their first contribution in #12628
Full Changelog: v2.33.1...v2.34.0
v2.33.1
What's Changed
β¨ Improvements
- Add support for gw_priority, enable_ipv4 (requires docker v28.0) by @thaJeztah in #12570
π Fixes
- Run watch standalone if menu fails to start by @ndeloof in #12536
- Report error using non-file secret|config with read-only service by @ndeloof in #12531
- Don't display bake suggestion when using --progress with quiet or json option by @glours in #12561
- Fix pull --parallel and --no-parallel deprecation warnings missing by @maxproske in #12555
- Fix error message when detach is implied by wait by @ndeloof in #12566
βοΈ Dependencies
- build(deps): bump github.com/spf13/cobra from 1.8.1 to 1.9.1 by @dependabot in #12556
- build(deps): bump google.golang.org/grpc from 1.68.1 to 1.70.0 by @dependabot in #12494
- go.mod: update to docker v28.0.0 by @thaJeztah in #12545
Full Changelog: v2.33.0...v2.33.1
v2.33.0
What's Changed
Important
This release introduce support for Bake to manage builds as an alternative to the internal buildkit client. This new feature can be enabled by setting COMPOSE_BAKE=1
variable. Bake will become the default builder in a future release.
β¨ Improvements
- let user know bake is now supported by @ndeloof in #12524
- support additional_context reference to another service by @ndeloof in #12485
- add support for BUILDKIT_PROGRESS by @ndeloof in #12458
- add --with-env flag to publish command by @glours in #12482
- Update ls --quiet help description by @maxproske in #12541
- Publish warn display env vars by @glours in #12486
π Fixes
- Fix bake support by @ndeloof in #12507
- Update link in stats --help output by @maxproske in #12523
- Properly handle "builtin" seccomp profile by @r-bk in #12478
- manage
watch
applied to mulitple services by @ndeloof in #12469
π§ Internal
- use main branch for docs upstream validation workflow by @crazy-max in #12487
- fix provenance for binaries and generate sbom by @crazy-max in #12479
- add codeowners file by @glours in #12480
- remove exit code per error type used by legacy metrics system by @ndeloof in #12502
- Dockerfile: update golangci-lint to v1.63.4 by @thaJeztah in #12546
- Full test coverage for compatibility cmd by @maxproske in #12528
- don't send raw os.Args to opentelemetry but a pseudo command line by @ndeloof in #12530
- add docker engine v28.x to the test-matrix by @thaJeztah in #12539
- enable copyloopvar linter by @thaJeztah in #12542
- go.mod: remove toolchain directive by @thaJeztah in #12551
βοΈ Dependencies
- bump buildx v0.20.1 by @ndeloof in #12488
- bump docker to v27.5.1 by @ndeloof in #12491
- bump compose-go v2.4.8 by @ndeloof in #12543
- bump golang.org/x/sys from 0.28.0 to 0.30.0 by @dependabot in #12529
- bump github.com/moby/term v0.5.2 by @thaJeztah in #12540
- bump github.com/otiai10/copy from 1.14.0 to 1.14.1 by @dependabot in #12493
- bump github.com/jonboulle/clockwork from 0.4.0 to 0.5.0 by @dependabot in #12430
- bump github.com/spf13/pflag from 1.0.5 to 1.0.6 by @dependabot in #12548
- bump golang.org/x/sync from 0.10.0 to 0.11.0 by @dependabot in #12547
- bump gotest.tools/v3 from 3.5.1 to 3.5.2 by @dependabot in #12549
New Contributors
- @r-bk made their first contribution in #12478
- @maxproske made their first contribution in #12523
Full Changelog: v2.32.4...v2.33.0
v2.32.4
What's Changed
This release fixes the version issue of v2.32.3
π§ Internal
- ci: use local source for binary builds by @crazy-max in #12470
- ci: re-use local source to build binary images by @glours in #12471
- add missing tag for build during merge workflow by @glours in #12473
Full Changelog: v2.32.3...v2.32.4
v2.32.3
What's Changed
docker compose version
display its commit hash.
π Fixes
- Only override service mac if set on the main network. by @apollo13 (12439)
- Exclude one-off container running convergence by @ndeloof (12441)
- Can't render progress concurrently with buildkit by @ndeloof (12442)
- Image can be set to a local ID, that isn't a valid docker ref by @ndeloof (12446)
π§ Internal
- CI: update bake-action to v6 by @crazy-max (12452)
- Simplification by @ndeloof (12451)
Full Changelog: v2.32.2...v2.32.3
v2.32.2
What's Changed
β¨ Improvements
π Fixes
- Only check bind mount conflict if sync action is involved by @ndeloof (12409)
- When retrying to resolveOrCreateNetwork, retry with a valid network name by @gtardif (12422)
- checkExpectedVolumes must ignore anonymous volumes by @ndeloof in #12410
π§ Internal
- Gofumpt all the things by @ndeloof (12392)
- Use the 3 latest major versions of the engine to run e2e step by @glours (12401)
- Replace tibdex/github-app-token by official GitHub create-github-app-token by @glours (12411)
βοΈ Dependencies
- Bump Golang version to
v1.22.10
and update CI actions by @glours (12399) - Bump golang.org/x/net to
v0.33.0
to fix potential security issue by @glours (12405) - Bump
compose-go
tov2.4.7
by @glours (12438)
Full Changelog: v2.32.1...v2.32.2