Releases: moby/moby
v26.0.0-rc2
26.0.0-rc2
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
- docker/cli, 26.0.0 milestone
- moby/moby, 26.0.0 milestone
- Deprecated and removed features, see Deprecated Features.
- Changes to the Engine API, see API version history.
New
- Allow to enable host loopback by setting
DOCKERD_ROOTLESS_ROOTLESSKIT_DISABLE_HOST_LOOPBACK
to false, defaults true. It allows to connect to host by using 10.0.2.2 IP moby/moby#47352
Bug fixes and enhancements
- Fix multiple parallel
docker build
runs leaking disk space. moby/moby#47523 - rc1 regression: Fix
docker pull
regression introduced in rc1 causing a wrong pull progress message moby/moby#47475 - rc1 regression: Do not attempt to configure an IPv6 address or gateway in a container that's got IPv6 disabled.
- rc1 regression: Fix build sometimes ending with
ERROR: failed to solve: unknown blob <digest> in history
. moby/moby#47520
API
- The
is_automated
field in thePOST /images/search
endpoint results is alwaysfalse
now. Consequently, searching foris-automated=true
will yield no results, whileis-automated=false
will be a no-op. moby/moby#47465
Packaging updates
- Upgrade Go runtime to 1.21.8. moby/moby#47502
- Update Buildkit to v0.13.0. moby/moby#47511
- Update RootlessKit to v2.0.2. moby/moby#47508
- Update Compose to v2.24.7. docker/docker-ce-packaging#998
- Update Buildx to v0.13.0. docker/docker-ce-packaging#997
v25.0.4
25.0.4
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
- docker/cli, 25.0.4 milestone
- moby/moby, 25.0.4 milestone
- Deprecated and removed features, see Deprecated Features.
- Changes to the Engine API, see API version history.
Bug fixes and enhancements
- Restore DNS names for containers in the default "nat" network on Windows. moby/moby#47490
- Fix
docker start
failing when used with--checkpoint
moby/moby#47466 - Don't enforce new validation rules for existing swarm networks moby/moby#47482
- Restore IP connectivity between the host and containers on an internal bridge network. moby/moby#47481
- Fix a regression introduced in v25.0 that prevented the classic builder from ADDing a tar archive with xattrs created on a non-Linux OS moby/moby#47483
- containerd image store: Fix image pull not emitting
Pulling fs layer
status moby/moby#47484
API
- To preserve backwards compatibility, make read-only mounts not recursive by default when using older clients (API version < v1.44). moby/moby#47393
GET /images/{id}/json
omits theCreated
field (previously it was0001-01-01T00:00:00Z
) if theCreated
field is missing from the image config. moby/moby#47451- Populate a missing
Created
field inGET /images/{id}/json
with0001-01-01T00:00:00Z
for API version <= 1.43. moby/moby#47387 - Fix a regression that caused API socket connection failures to report an API version negotiation failure instead. moby/moby#47470
- Preserve supplied endpoint configuration in a container-create API request, when a container-wide MAC address is specified, but
NetworkMode
name-or-id is not the same as the name-or-id used inNetworkSettings.Networks
. moby/moby#47510
Packaging updates
- Upgrade Go runtime to 1.21.8. moby/moby#47503
- Upgrade RootlessKit to v2.0.2. moby/moby#47508
- Upgrade Compose to v2.24.7. docker/docker-ce-packaging#998
- Upgrade Buildx to v0.13.0. docker/docker-ce-packaging#997
Full Changelog: v25.0.3...v25.0.4
v26.0.0-rc1
26.0.0-rc1
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
- docker/cli, 26.0.0 milestone
- moby/moby, 26.0.0 milestone
- Deprecated and removed features, see Deprecated Features.
- Changes to the Engine API, see API version history.
New
- Add
Subpath
field to theVolumeOptions
making it possible to mount a subpath of a volume. moby/moby#45687 - Add
volume-subpath
option to mount flag (--mount type=volume,...,volume-subpath=<subpath>
) docker/cli#4331 - containerd image store:
image list
will no longer produce multiple duplicates image entries for multi-platform images moby/moby#45967 - Accept
=
separators and[ipv6]
in compose files fordocker stack deploy
docker/cli#4860
Bug fixes and enhancements
- Fix
ADD
Dockerfile instruction failing withlsetxattr <file>: operation not supported
when unpacking archive with xattrs onto a filesystem that doesn't support them. moby/moby#47175 - Fix
docker start
failing when used with--checkpoint
moby/moby#47456 - Always try to enable IPv6 on a container's loopback interface, and only include IPv6 in '/etc/hosts' if successful. moby/moby#47062
- Restore IP connectivity between the host and containers on an internal bridge network. moby/moby#47356
- Do not enforce new validation rules for existing swarm networks moby/moby#47361
- Restore DNS names for containers in the default "nat" network on Windows. moby/moby#47375
- Print hint when invoking "docker images" with ambiguous argument docker/cli#4849
- Cleanup
@docker_cli_[UUID]
files on OpenBSD docker/cli#4862 - containerd image store: Isolate images with different containerd namespaces when
--userns-remap
option is used moby/moby#46786 - containerd image store: Fix image pull not emitting
Pulling fs layer
status moby/moby#47432 - Ensure that a generated MAC address is not restored when a container is restarted, but a configured MAC address is preserved. moby/moby#47233
Note
Containers created using 25.0.0 may have duplicate MAC addresses, they must be re-created.
Containers created using 25.0.0 or 25.0.1 with user-defined MAC addresses will get generated MAC addresses when they are started using 25.0.2. They must also be re-created.
API
- To preserve backwards compatibility, read-only mounts are not recursive by default when using older clients (API version < v1.44). moby/moby#47391
GET /images/{id}/json
omits theCreated
field (previously it was0001-01-01T00:00:00Z
) if theCreated
field is missing from the image config. moby/moby#47451- Populate a missing
Created
field inGET /images/{id}/json
with0001-01-01T00:00:00Z
for API version <= 1.43. moby/moby#47387
Packaging updates
- Upgrade Go runtime to 1.21.7. moby/moby#47385
- Update BuildKit to v0.13.0-rc3 moby/moby#47364
- Update containerd binary to v1.7.13 moby/moby#47278
- Update runc binary to v1.1.12 moby/moby#47268
- Update Rootlesskit to v2.0.1 moby/moby#47332
- Update OTEL to v0.46.1 / v1.21.0 moby/moby#47245
Removed
- Disable pulling of deprecated image formats by default. These image formats are deprecated, and support will be removed in a future version. moby/moby#47459
- image: remove deprecated IDFromDigest moby/moby#47198
- Removed the deprecated
github.com/docker/docker/pkg/loopback
package. moby/moby#47128 - pkg/system: remove deprecated
ErrNotSupportedOperatingSystem
,IsOSSupported
moby/moby#47129 - pkg/homedir: remove deprecated Key() and GetShortcutString() moby/moby#47130
- pkg/containerfs: remove deprecated ResolveScopedPath moby/moby#47131
- The daemon flag
--oom-score-adjust
has been deprecated in v24.0 and is now removed. moby/moby#46113 - API: remove deprecated API versions (API < v1.24) moby/moby#47155
- Remove deprecated aliases from the api/types package. These types were deprecated in v25.0.0, which provided temporary aliases. moby/moby#47148
These aliases are now removed:types.Info
,types.Commit
,types.PluginsInfo
,types.NetworkAddressPool
,types.Runtime
,types.SecurityOpt
,types.KeyValue
,types.DecodeSecurityOptions
,types.CheckpointCreateOptions
,types.CheckpointListOptions
,types.CheckpointDeleteOptions
,types.Checkpoint
,types.ImageDeleteResponseItem
,types.ImageSummary
,types.ImageMetadata
,types.ServiceUpdateResponse
,types.ServiceCreateResponse
,types.ResizeOptions
,types.ContainerAttachOptions
,types.ContainerCommitOptions
,types.ContainerRemoveOptions
,types.ContainerStartOptions
,types.ContainerListOptions
,types.ContainerLogsOptions
- cli/command/container: remove deprecated
NewStartOptions()
docker/cli#4811 - cli/command: remove deprecated
DockerCliOption
,InitializeOpt
docker/cli#4810
v25.0.3
25.0.3
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
Bug fixes and enhancements
-
containerd image store: Fix a bug where
docker image history
would fail if a manifest wasn't found in the content store. moby/moby#47348 -
Ensure that a generated MAC address is not restored when a container is restarted, but a configured MAC address is preserved. moby/moby#47304
Note
- Containers created with Docker Engine version 25.0.0 may have duplicate MAC addresses.
They must be re-created. - Containers with user-defined MAC addresses created with Docker Engine versions 25.0.0 or 25.0.1
receive new MAC addresses when started using Docker Engine version 25.0.2.
They must also be re-created.
- Containers created with Docker Engine version 25.0.0 may have duplicate MAC addresses.
- Fix
docker save <image>@<digest>
producing an OCI archive with index without manifests. moby/moby#47294 - Fix a bug preventing bridge networks from being created with an MTU higher than 1500 on RHEL and CentOS 7. moby/moby#47308, moby/moby#47311
- Fix a bug where containers are unable to communicate over an
internal
network. moby/moby#47303 - Fix a bug where the value of the
ipv6
daemon option was ignored. moby/moby#47310 - Fix a bug where trying to install a pulling using a digest revision would cause a panic. moby/moby#47323
- Fix a potential race condition in the managed containerd supervisor. moby/moby#47313
- Fix an issue with the
journald
log driver preventing container logs from being followed correctly with systemd version 255. moby/moby47243 - seccomp: Update the builtin seccomp profile to include syscalls added in kernel v5.17 - v6.7 to align the profile with the profile used by containerd. moby/moby#47341
- Windows: Fix cache not being used when building images based on Windows versions older than the host's version. moby/moby#47307, moby/moby#47337
Packaging updates
- Removed support for Ubuntu Lunar (23.04). docker/ce-packaging#986
v25.0.2
25.0.2
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
Security
This release contains security fixes for the following CVEs
affecting Docker Engine and its components.
CVE | Component | Fix version | Severity |
---|---|---|---|
CVE-2024-21626 | runc | 1.1.12 | High, CVSS 8.6 |
CVE-2024-23651 | BuildKit | 1.12.5 | High, CVSS 8.7 |
CVE-2024-23652 | BuildKit | 1.12.5 | High, CVSS 8.7 |
CVE-2024-23653 | BuildKit | 1.12.5 | High, CVSS 7.7 |
CVE-2024-23650 | BuildKit | 1.12.5 | Medium, CVSS 5.5 |
CVE-2024-24557 | Docker Engine | 25.0.2 | Medium, CVSS 6.9 |
The potential impacts of the above vulnerabilities include:
- Unauthorized access to the host filesystem
- Compromising the integrity of the build cache
- In the case of CVE-2024-21626, a scenario that could lead to full container escape
For more information about the security issues addressed in this release,
refer to the blog post.
For details about each vulnerability, see the relevant security advisory:
Packaging updates
- Upgrade containerd to v1.6.28.
- Upgrade containerd to v1.7.13 (static binaries only). moby/moby#47280
- Upgrade runc to v1.1.12. moby/moby#47269
- Upgrade Compose to v2.24.5. docker/docker-ce-packaging#985
- Upgrade BuildKit to v0.12.5. moby/moby#47273
v24.0.9
24.0.9
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
Security
This release contains security fixes for the following CVEs affecting Docker Engine and its components.
CVE | Component | Fix version | Severity |
---|---|---|---|
CVE-2024-21626 | runc | 1.1.12 | High, CVSS 8.6 |
CVE-2024-24557 | Docker Engine | 24.0.9 | Medium, CVSS 6.9 |
Important
⚠️ Note that this release of Docker Engine doesn't include fixes for the following known vulnerabilities in BuildKit:
To address these vulnerabilities, upgrade to Docker Engine v25.0.2.
For more information about the security issues addressed in this release, and the unaddressed vulnerabilities in BuildKit, refer to the
blog post. For details about each vulnerability, see the relevant security advisory:
Packaging updates
- Upgrade runc to v1.1.12. moby/moby#47269
- Upgrade containerd to v1.7.13 (static binaries only). moby/moby#47280
v23.0.9
23.0.9
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
v24.0.8
24.0.8
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
Bug fixes and enhancements
- Live restore: Containers with auto remove (
docker run --rm
) are no longer forcibly removed on engine restart. moby/moby#46857
Packaging updates
- Upgrade Go to
go1.20.13
. moby/moby#47054, docker/cli#4826, docker/docker-ce-packaging#975 - Upgrade containerd (static binaries only) to v1.7.12 moby/moby#47096
- Upgrade runc to v1.1.11. moby/moby#47010
v25.0.1
25.0.1
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
Bug fixes and enhancements
- API: Fix incorrect HTTP status code for containers with an invalid network configuration created before upgrading to Docker Engine v25.0. moby/moby#47159
- Ensure that a MAC address based on a container's IP address is re-generated when the container is stopped and restarted, in case the generated IP/MAC addresses have been reused. moby/moby#47171
- Fix
host-gateway-ip
not working during build when not set through configuration. moby/moby#47192 - Fix a bug that prevented a container from being renamed twice. moby/moby#47196
- Fix an issue causing containers to have their short ID added to their network alias when inspecting them. moby/moby#47182
- Fix an issue in detecting whether a remote build context is a Git repository. moby/moby#47136
- Fix an issue with layers order in OCI manifests. moby/moby#47150
- Fix volume mount error when passing an
addr
orip
mount option. moby/moby#47185 - Improve error message related to extended attributes that can't be set due to improperly namespaced attribute names. moby/moby#47178
- Swarm: Fixed
start_interval
not being passed to the container config. moby/moby#47163
Packaging updates
- Upgrade Compose to
2.24.2
. docker/docker-ce-packaging#981
v25.0.0
25.0.0
For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:
- docker/cli, 25.0.0 milestone
- moby/moby, 25.0.0 milestone
- Deprecated and removed features, see Deprecated Features.
- Changes to the Engine API, see API version history.
New
- Add OpenTelemetry tracing. moby/moby#45652, moby/moby#45579
- Add support for CDI devices under Linux. moby/moby#45134, docker/cli#4510, moby/moby#46004
- Add an additional interval to be used by healthchecks during the container start period. moby/moby#40894, docker/cli#4405, moby/moby#45965
- Add a
--log-format
flag todockerd
to control the logging format: text (default) or JSON. moby/moby#45737 - Add support for recursive read-only mounts. moby/moby#45278, moby/moby#46037
- Add support for filtering images based on timestamp with
docker image ls --filter=until=<timestamp>
. moby/moby#46577
Bug fixes and enhancements
- API: Fix error message for invalid policies at
ValidateRestartPolicy
. moby/moby#46352 - API: Update
/info
endpoint to use singleflight. moby/moby#45847 - Add an error message for when specifying a Dockerfile filename with
-f
, and also usingstdin
. docker/cli#4346 - Add support for
mac-address
andlink-local-ip
fields in--network
long format. docker/cli#4419 - Add support for specifying multiple
--network
flags withdocker container create
anddocker run
. moby/moby#45906 - Automatically enable IPv6 on a network when an IPv6 subnet is specified. moby/moby#46455
- Add support for overlay networks over IPv6 transport. moby/moby#46790
- Configuration reloading is now more robust: if there's an error during the configuration reload process, no configuration changes are applied. moby/moby#43980
- Live restore: Containers with auto remove (
docker run --rm
) are no longer forcibly removed on engine restart. moby/moby#46857 - Live restore: containers that are live-restored will now be given another health-check start period when the daemon restarts. moby/moby#47051
- Container health status is flushed to disk less frequently, reducing wear on flash storage. moby/moby#47044
- Ensure network names are unique. moby/moby#46251
- Ensure that overlay2 layer metadata is correct. moby/moby#46471
- Fix
Downloading
progress message on image pull. moby/moby#46515 - Fix
NetworkConnect
andContainerCreate
with improved data validation, and return all validation errors at once. moby/moby#46183 - Fix
com.docker.network.host_ipv4
option when IPv6 and ip6tables are enabled. moby/moby#46446 - Fix daemon's
cleanupContainer
if containerd is stopped. moby/moby#46213 - Fix returning incorrect HTTP status codes for libnetwork errors. moby/moby#46146
- Fix various issues with images/json API filters and image list. moby/moby#46034
- CIFS volumes now resolves FQDN correctly. moby/moby#46863
- Improve validation of the
userland-proxy-path
daemon configuration option. Validation now happens during daemon startup, instead of producing an error when starting a container with port-mapping. moby/moby#47000 - Set the MAC address of container's interface when network mode is a short network ID. moby/moby#46406
- Sort unconsumed build arguments before display in build output. moby/moby#45917
- The
docker image save
tarball output is now OCI compliant. moby/moby#44598 - The daemon no longer appends
ACCEPT
rules to the end of theINPUT
iptables chain for encrypted overlay networks. Depending on firewall configuration, a rule may be needed to permit incoming encrypted overlay network traffic. moby/moby#45280 - Unpacking layers with extended attributes onto an incompatible filesystem will now fail instead of silently discarding extended attributes. moby/moby#45464
- Update daemon MTU option to BridgeConfig and display warning on Windows. moby/moby#45887
- Validate IPAM config when creating a network. Automatically fix networks created prior to this release where
--ip-range
is larger than--subnet
. moby/moby#45759 - containerd image store: Add image events for
push
,pull
, andsave
. moby/moby#46405 - containerd image store: Add support for pulling legacy schema1 images. moby/moby#46513
- containerd image store: Add support for pushing all tags. moby/moby#46485
- containerd image store: Add support for registry token. moby/moby#46475
- containerd image store: Add support for showing the number of containers that use an image. moby/moby#46511
- containerd image store: Fix a bug related to the
ONBUILD
,MAINTAINER
, andHEALTHCHECK
Dockerfile instructions. moby/moby#46313 - containerd image store: Fix
Pulling from
progress message. moby/moby#46494 - containerd image store: Add support for referencing images via the truncated ID with
sha256:
prefix. moby/moby#46435 - containerd image store: Fix
docker images
showing intermediate layers by default. moby/moby#46423 - containerd image store: Fix checking if the specified platform exists when getting an image. moby/moby#46495
- containerd image store: Fix errors when multiple
ADD
orCOPY
instructions were used with the classic builder. moby/moby#46383 - containerd image store: Fix stack overflow errors when importing an image. moby/moby#46418
- containerd image store: Improve
docker pull
progress output. moby/moby#46412 - containerd image store: Print the tag, digest, and size after pushing an image. moby/moby#46384
- containerd image store: Remove panic from
UpdateConfig
. moby/moby#46433 - containerd image store: Return an error when an image tag resembles a digest. moby/moby#46492
- containerd image store:
docker image ls
now shows the correct image creation time and date. moby/moby#46719 - containerd image store: Fix an issue handling user namespace settings. moby/moby#46375
- containerd image store: Add support for pulling all tags (
docker pull -a
). moby/moby#46618 - containerd image store: Use the domain name in the image reference as the default registry authentication domain. moby/moby#46779
Packaging updates
- Upgrade API to v1.44. moby/moby#45468
- Upgrade Compose to
2.24.1
. docker/docker-ce-packaging#980 - Upgrade containerd to v1.7.12 (static binaries only). moby/moby#47070
- Upgrade Go runtime to 1.21.6. moby/moby#47053
- Upgrade runc to v1.1.11. moby/moby#47007
- Upgrade BuildKit to v0.12.4. moby/moby#46882
- Upgrade Buildx to v0.12.1. docker/docker-ce-packaging#979
Removed
- API: Remove VirtualSize field for the
GET /images/json
andGET /images/{id}/json
endpoints. moby/moby#45469 - Remove deprecated
devicemapper
storage driver. [#43637](#43...