Image digest reconciliation is overhauled to prevent unnecessary container recreation, though existing containers may be recreated on the first run after upgrading as digests are re-evaluated with the new logic. compose pull now honors pull_policy refresh windows (daily, weekly, every_N). Includes fixes for build-only services, watch pruning, config hashing, and unreadable directories.
Compose
Multi-container application orchestration
npx @buildinternet/releases get docker-composeImage digest reconciliation is overhauled so compose up no longer recreates containers unnecessarily, though existing containers may be recreated on the first run after upgrading as digests are re-evaluated. compose pull now honors pull_policy refresh windows like daily, weekly, and every_N. Includes several watch, bridge, and config fixes.
Compose v5.4.0 introduces a new reconciliation workflow that models volume and network lifecycle changes in the plan, fixing cases where resources were recreated unnecessarily. Also fixes build digest resolution to use the platform image-manifest digest instead of the attested index, ensures config flags apply to --services/--volumes/--networks/--models/--hash, and tolerates missing env files on scale, watch, and shell completion.
Compose now models volume and network lifecycle changes in the reconciliation plan, enabling safe resource recreation during apply. Fixes include preserving zero-replica services during hashing, honoring --insecure-registry on reload, and tolerating missing env files on more commands.
What's Changed
🔧 Internal
- Ci: add concurrency group to pr-review-trigger to prevent duplicate reviews by @derekmisler in https://github.com/docker/compose/pull/13890
- Fix grammar in Attestations field comment by @blackflytech in…
What's Changed
🔧 Internal
- Ci: add concurrency group to pr-review-trigger to prevent duplicate reviews by @derekmisler in https://github.com/docker/compose/pull/13890
- Fix grammar in Attestations field comment by @blackflytech in…
Adds native support for pre-start init containers in Compose files, and fixes OCI route authorizer token fetches through the provided transport. Also scopes running events to project services for the run command.
Init containers are now natively supported via the pre_start_init_containers field. Fixed an issue where OCI registry authorizer tokens were not routed through the configured transport, and scoped docker compose run events to project services only.
New reconciliation algorithm; plugin rawsetenv support
Breaking (minor)Introduced a new reconciliation algorithm between observed and expected container state, and added rawsetenv message type for provider plugins. Fixed TTY auto-detection via stderr, publish env_file handling with missing optional files, and skip validation when extracting config variables.
New reconciliation algorithm; loopback registry proxy bypassed
Breaking (minor)Introduces a new reconciliation algorithm between observed and expected state, which may affect existing Compose workloads. Adds rawsetenv message type for provider plugins. Fixes include bypassing Docker Desktop proxy for loopback registries, honoring env_file required: false on publish, and skipping remote URL contexts from bake fs.read allowlist.
Fixed OCI artifact pulls to route through Docker Desktop HTTP proxy and corrected the publish command to properly flag literal inline environment values. Added a stop lifecycle hook for external providers and restored stoppingEvent/stoppedEvent helpers for plugin stop hooks.
Fixed OCI artifact pulls to route through Docker Desktop HTTP proxy and corrected literal inline environment values in the publish flag. Added a stop lifecycle hook for external providers and restored stoppingEvent/stoppedEvent helpers for plugin stop hook.
What's Changed
🐛 Fixes
- fix: provider output handling and watch rebuild re-invocation by @glours in https://github.com/docker/compose/pull/13732
🔧 Internal
- Add Docker Desktop Logs view hints and navigation shortcut by @glours in…
What's Changed
🐛 Fixes
- fix: provider output handling and watch rebuild re-invocation by @glours in https://github.com/docker/compose/pull/13732
🔧 Internal
- Add Docker Desktop Logs view hints and navigation shortcut by @glours in…
What's Changed
🐛 Fixes
- Fix TTY timer rendering when duration length changes by @MaybeSam05 in https://github.com/docker/compose/pull/13634
- Fix up attach filtering by @false200 in https://github.com/docker/compose/pull/13664
- Preserve ssh:// URL scheme when…
What's Changed
🐛 Fixes
- Fix TTY timer rendering when duration length changes by @MaybeSam05 in https://github.com/docker/compose/pull/13634
- Fix up attach filtering by @false200 in https://github.com/docker/compose/pull/13664
- Preserve ssh:// URL scheme when…
What's Changed
🐛 Fixes
- Only pass ConsoleSize to ExecAttach when TTY is enabled by @mikesir87 in https://github.com/docker/compose/pull/13616
- Fix deadlock in ttyWriter.Done() by @maks2134 in https://github.com/docker/compose/pull/13640
⚙️ Dependencies
*…
What's Changed
🐛 Fixes
- Only pass ConsoleSize to ExecAttach when TTY is enabled by @mikesir87 in https://github.com/docker/compose/pull/13616
- Fix deadlock in ttyWriter.Done() by @maks2134 in https://github.com/docker/compose/pull/13640
⚙️ Dependencies
*…
What's Changed
🐛 Fixes
- emit container status events after network reconnection (fixes #13524) by @MaheshThakur9152 in https://github.com/docker/compose/pull/13529
- Fix potential nil pointer dereference in container event monitoring by @Nepomuk5665 in…
What's Changed
🐛 Fixes
- emit container status events after network reconnection (fixes #13524) by @MaheshThakur9152 in https://github.com/docker/compose/pull/13529
- Fix potential nil pointer dereference in container event monitoring by @Nepomuk5665 in…