diff --git a/content/manuals/engine/release-notes/29.md b/content/manuals/engine/release-notes/29.md index e3d9d2cb0249..83ef71a7c7e7 100644 --- a/content/manuals/engine/release-notes/29.md +++ b/content/manuals/engine/release-notes/29.md @@ -22,6 +22,60 @@ For more information about: - Deprecated and removed features, see [Deprecated Engine Features](../deprecated.md). - Changes to the Engine API, see [Engine API version history](/reference/api/engine/version-history/). +## 29.7.0 + +{{< release-date date="2026-07-30" >}} + +For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones: + +- [docker/cli, 29.7.0 milestone](https://github.com/docker/cli/issues?q=is%3Aclosed+milestone%3A29.7.0) +- [moby/moby, 29.7.0 milestone](https://github.com/moby/moby/issues?q=is%3Aclosed+milestone%3A29.7.0) + +### New + +- Add an experimental `embedded-containerd` feature that runs containerd inside the daemon process instead of as a separate managed process. [moby/moby#52898](https://github.com/moby/moby/pull/52898) +- Mount type `image` is no longer experimental. [moby/moby#52998](https://github.com/moby/moby/pull/52998) +- Add the `default-stop-timeout` daemon option to configure the stop timeout assigned to containers without an explicit timeout. [moby/moby#53146](https://github.com/moby/moby/pull/53146) + +### Security + +This release includes a fix for a security vulnerability affecting Docker Engine and related components. + +- Update github.com/moby/go-archive to v0.3.0 to fix [CVE-2026-17106](https://www.cve.org/CVERecord?id=CVE-2026-17106) / [GHSA-hfg8-hc9c-6c3h](https://github.com/moby/go-archive/security/advisories/GHSA-hfg8-hc9c-6c3h). [moby/moby#53247](https://github.com/moby/moby/pull/53247), [docker/cli#7139](https://github.com/docker/cli/pull/7139) + +### Networking + +- Fix a daemon panic when cleanup of a container's network interface fails while the container is being disconnected from a network. [moby/moby#53237](https://github.com/moby/moby/pull/53237) +- Fix a daemon panic when removing swarm ingress ports after failing to bind an ingress proxy listener. [moby/moby#53022](https://github.com/moby/moby/pull/53022) + +### Rootless + +- Keep the cgroup mount for containers with `--net=host`. [moby/moby#52318](https://github.com/moby/moby/pull/52318) + +### Bug fixes and enhancements + + +- Add shell completion for `--filter` names and known values to `docker service ls`, `docker service ps`, and `docker node ps`. [docker/cli#7124](https://github.com/docker/cli/pull/7124) +- containerd image store: Fix daemon-wide concurrent download and upload limits for pulls and pushes not being honored. [moby/moby#53081](https://github.com/moby/moby/pull/53081) + - To preserve the previous unlimited startup behavior, configure "max-concurrent-downloads" and "max-concurrent-uploads" to 0 +- Fix `docker cp -a` using the wrong file owner when copying files into containers with user namespace remapping enabled. [moby/moby#53084](https://github.com/moby/moby/pull/53084) +- Fix `docker cp` from a Windows container silently returning a file instead of an error when the source path ends with a separator but is not a directory. [moby/moby#53123](https://github.com/moby/moby/pull/53123) +- Fix `docker stats` reporting all zeros for running Windows containers when using the containerd runtime. [moby/moby#53101](https://github.com/moby/moby/pull/53101) +- Fix `docker stats` reporting empty network stats for running Windows containers when using the containerd runtime. [moby/moby#53219](https://github.com/moby/moby/pull/53219) +- Fix a typo in the `docker create --pull` flag description. [docker/cli#7103](https://github.com/docker/cli/pull/7103) +- Fix Swarm service updates failing due to "file exists" errors when a VIP IP alias already exists on the LB endpoint interface. [moby/moby#51657](https://github.com/moby/moby/pull/51657) +- Fix Swarm tasks being rejected when their image could not be pulled from the registry but was already present on the node. [moby/moby#53212](https://github.com/moby/moby/pull/53212) +- Improve the error returned when a container hostname exceeds Linux's 64-byte limit. [moby/moby#53121](https://github.com/moby/moby/pull/53121) +- Prevent live-restored volumes from retaining active mount references when containers exit during daemon startup. [moby/moby#53115](https://github.com/moby/moby/pull/53115) +- Suppress the “No such container” error when `docker rm --force` succeeds for a nonexistent container. [docker/cli#7110](https://github.com/docker/cli/pull/7110) + +### Packaging updates + +- Update Go runtime to [1.26.5](https://go.dev/doc/devel/release#go1.26.5). [docker/cli#7087](https://github.com/docker/cli/pull/7087) +- Update BuildKit to [v0.32.0](https://github.com/moby/buildkit/releases/tag/v0.32.0). [moby/moby#53234](https://github.com/moby/moby/pull/53234) +- Update containerd (static binaries) to [v2.3.3](https://github.com/containerd/containerd/releases/tag/v2.3.3). [moby/moby#53050](https://github.com/moby/moby/pull/53050) +- Update runc (in static binaries) to [v1.4.3](https://github.com/opencontainers/runc/releases/tag/v1.4.3). [moby/moby#50960](https://github.com/moby/moby/pull/50960) + ## 29.6.2 {{< release-date date="2026-07-16" >}} diff --git a/hack/moby-sync-release.sh b/hack/moby-sync-release.sh index dc1192c4872d..edce7938574e 100755 --- a/hack/moby-sync-release.sh +++ b/hack/moby-sync-release.sh @@ -18,9 +18,12 @@ docs_notes=$(mktemp -t new) github_notes=$(mktemp -t old) # Get the release notes from the docs. -grep -A 10000 "## ${version}" "content/manuals/engine/release-notes/${major_version}.md" | \ - grep -m 2 -A 0 -B 10000 '^## ' | \ - sed '$d' | \ +awk -v heading="## ${version}" ' + $0 == heading { found = 1; print; next } + found && /^## / { exit } + found { print } + END { if (!found) exit 1 } +' "content/manuals/engine/release-notes/${major_version}.md" | \ sed '/{{< release-date /{N;d;}' \ > "$docs_notes" || { echo "Release notes for ${version} not found" && exit 1; } diff --git a/hugo.yaml b/hugo.yaml index 729943cd99cb..5c4f4601fc4f 100644 --- a/hugo.yaml +++ b/hugo.yaml @@ -165,10 +165,10 @@ params: # Latest version of the Docker Engine API latest_engine_api_version: "1.55" # Latest version of Docker Engine - docker_ce_version: "29.6.1" + docker_ce_version: "29.7.0" # Previous version of the Docker Engine # (Used to show e.g., "latest" and "latest"-1 in engine install examples - docker_ce_version_prev: "29.6.0" + docker_ce_version_prev: "29.6.2" # Latest Docker Compose version compose_version: "v5.1.2" # Latest BuildKit version