Docker Engine version 29 release notes

Table of contents

This page describes the latest changes, additions, known issues, and fixes for Docker Engine version 29.

For more information about:

29.0.0-rc.3

2025-11-06

For a full list of pull requests and changes in this release, refer to the relevant GitHub milestones:

Caution

This release includes several breaking changes and deprecations. Review the release notes carefully before upgrading.

  • Experimental support for nftables can now be enabled by setting Docker daemon's firewall-backend option to nftables. For more information, see Docker Engine docs.
  • containerd image store is now the default for fresh installs. This doesn't apply to daemons configured with userns-remap (see moby#47377).

Breaking Changes

  • The Go module github.com/docker/docker is deprecated in favor of github.com/moby/moby/client and github.com/moby/moby/api. The github.com/moby/moby module is considered an internal implementation detail - the only supported public modules are client and api. Starting with v29, releases are tagged with the docker- prefix (e.g., docker-v29.0.0). This only affects Go module users and package maintainers.
  • The daemon now requires API version v1.44 or later (Docker v25.0+).
  • Debian armhf (32-bit) packages now target ARMv7 CPUs and will not work on ARMv6 devices.
  • Official Raspbian (32-bit) packages are no longer provided. Use Debian arm64 packages for 64-bit devices, or Debian armhf packages for 32-bit ARMv7 devices.
  • cgroup v1 is deprecated. Support continues until at least May 2029, but migrate to cgroup v2 as soon as possible. See moby#51111.
  • Docker Content Trust removed from the Docker CLI. Can be built as a separate plugin: https://github.com/docker/cli/blob/v29.0.0/cmd/docker-trust/main.go

New

  • docker image load and docker image save now supports multiple platform selection via --platform flag (e.g., docker image load --platform linux/amd64,linux/arm64 -i image.tar). docker/cli#6126
  • docker image ls now uses the new view (like --tree but collapsed) by default. docker/cli#6566
  • docker run --runtime <...> is now supported on Windows. moby/moby#50546
  • GET /containers/json now includes a Health field describing container healthcheck status. moby/moby#50281
  • Add device entitlement to builder configuration. moby/moby#50386
  • Add support for memory-swap and memory-swappiness flags to docker service create and docker service update commands. docker/cli#6619
  • Add support for memswap_limit and mem_swappiness to docker stack compose files. docker/cli#6619
  • Allow Docker CLI to set the GODEBUG environment variable when the key-value pair ("GODEBUG":"...") exists inside the Docker context metadata. docker/cli#6371

Bug fixes and enhancements

  • docker image ls --tree now sorts images alphabetically by name instead of by creation date. docker/cli#6595
  • docker image ls no longer shows untagged images by default if no --all flag is provided. docker/cli#6574
  • docker save: Fixed inconsistent tar member timestamps when exporting images with the overlay2 storage driver. moby/moby#51365
  • Add a new log option for fluentd log driver (fluentd-read-timeout), which enables specifying read timeouts for reading acks from fluentd connections. moby/moby#50249
  • Add image name completion for docker images. docker/cli#6452
  • Add shell completion for docker inspect if a --type is set. docker/cli#6444
  • Add shell completion for docker plugin subcommands. docker/cli#6445
  • containerd image store is temporarily not available when userns remapping is enabled as a workaround for moby#47377. moby/moby#51042
  • contrib: remove contrib/httpserver, which was only used for integration tests. moby/moby#50654
  • daemon: improve validation of the --dns option and corresponding "dns" field in daemon.json. moby/moby#50600
  • dockerd-rootless.sh: if slirp4netns is not installed, try using pasta. moby/moby#51149
  • Fix --mount type=image failure when mounting the same image multiple times to a different destinations. moby/moby#50268
  • Fix docker stats <container> not exiting gracefully. docker/cli#6582
  • Fix a bug where collecting container stats in "one-shot" mode would not include the container's ID and Name. moby/moby#51302
  • Fix an issue where all new tasks in the Swarm could get stuck in the PENDING state forever after scaling up a service with placement preferences. moby/moby#50202
  • Fix issue where custom meta-headers were not passed through when using the containerd image store. moby/moby#51024
  • Fix requests not being logged when running the daemon with --log-level=trace. moby/moby#50986
  • Fix Swarm services becoming unreachable from published ports after a firewalld reload. moby/moby#50443
  • Improve errors when failing to connect to the API to provide more context to the user. moby/moby#50285
  • Improve shell completion for docker secret and docker config subcommands. docker/cli#6446
  • Prefer explicit device driver name over GPU capabilities when selecting the device driver with docker run --gpus. moby/moby#50717
  • Update runc to v1.3.3. moby/moby#51393
  • Updated SwarmKit internal TLS configuration to exclude known insecure cipher suites. moby/moby#51139

Packaging updates

  • client: remove legacy CBC cipher suites from client config. moby/moby#50126
  • contrib: remove editorconfig as it was unmaintained. moby/moby#50607
  • contrib: remove Dockerfile syntax highlighting files for nano and TextMate (tmbundle) as they were unmaintained and outdated. moby/moby#50606
  • contrib: remove mkimage-xxx scripts as they were unmaintained and not tested. moby/moby#50297
  • If Docker is downgraded to a version that does not have this support the network will become unusable, it must be deleted and re-created. moby/moby#50114
  • The Windows overlay network driver now supports option --dns. moby/moby#51229
  • Update BuildKit to v0.25.2. moby/moby#51397
  • Update containerd to v2.1.5. moby/moby#51409
  • Update Go runtime to 1.25.4. moby/moby#51418, docker/cli#6632
  • Users can request a specific prefix size for networks allocated from the default pools by using the unspecified address, for example --subnet 0.0.0.0/24 --subnet ::/96. moby/moby#50114

Networking

  • Add daemon option --bridge-accept-fwmark. Packets with this firewall mark will accepted by bridge networks, overriding Docker's iptables or nftables "drop" rules. moby/moby#50476
  • api/types/system: deprecated top level DiskUsage fields for type specific fields. moby/moby#51235
  • Ensure bridge devices are removed when bridge network creation fails. moby/moby#51147
  • Ensure that Windows NAT networks are recreated with their original labels when the Engine restarts. moby/moby#50447
  • Environment variables set on a container using legacy links are deprecated and aren't added automatically anymore. moby/moby#50719
    • The daemon can be started with DOCKER_KEEP_DEPRECATED_LEGACY_LINKS_ENV_VARS=1 to get them back
    • Users are encouraged to stop relying on these as they're deprecated, and the escape hatch will be removed in a later version
  • Fix a bug in NetworkDB which would sometimes cause entries to get stuck deleted on some of the nodes, leading to connectivity issues between containers on overlay networks. moby/moby#50342
  • Fix a bug that could cause the Engine and another host process to bind the same UDP port. moby/moby#50669
  • Fix a deadlock that could happen if a firewalld reload was processed while the bridge networking driver was starting up, or creating or deleting a network, or creating port-mappings. moby/moby#50620
  • Fix an issue preventing container startup or selection of its network gateway when IPv6 is only disabled on a specific interface. moby/moby#48971
  • For Linux, docker info now reports the firewall backend if available. docker/cli#6191
  • Greatly improve the reliability of overlay networking and the Swarm routing mesh. moby/moby#50393
  • Improve the convergence rate of NetworkDB, part of the management plane for overlay networking, after bursts of updates. moby/moby#50193
  • Improve the reliability of the overlay network driver. moby/moby#50260
  • Improved error handling for connection of a container to a network. moby/moby#50945
  • macvlan and IPvlan-l2 networks: no default gateway will be configured unless a --gateway is explicitly included in IPAM configuration. This addresses an issue which could cause container startup to fail in networks with IPv6 auto-configuration enabled. moby/moby#50929
  • nftables: Docker will not enable IP forwarding on the host. If forwarding is needed by a bridge network, but not enabled, daemon startup or network creation will fail with an error. You must either enable forwarding and ensure firewall rules are in place to prevent unwanted forwarding between non-Docker interfaces. Or, use daemon option --ip-forward=false to disable the check, but some bridge network functionality including port forwarding may not work. See Engine Docs for more information about migration from iptables to nftables. moby/moby#50646
  • On daemon startup, restart containers that share their network stacks before containers that need those stacks. moby/moby#50327
  • Published ports are now always accessible in networks with gateway mode "routed". Previously, rules to open those ports were only added when the routed mode network was selected as the container's default gateway. moby/moby#50140
  • Since 28.0.0, an iptables mangle rule for checksumming SCTP was only added if environment variable DOCKER_IPTABLES_SCTP_CHECKSUM=1 was set. The rule has now been removed, the environment variable now has no effect. moby/moby#50539
  • The iptables rules for bridge networks have been updated, including removal of the DOCKER-ISOLATION-STAGE-1 and DOCKER-ISOLATION-STAGE-2 chains. With these changes:. moby/moby#49981
    • Containers can now access ports published to host addresses by containers in other networks when the userland-proxy is not running
    • Containers can now access ports on container addresses in other networks that have gateway mode "nat-unprotected"
  • When dynamically linked, the Docker daemon now depends on libnftables. moby/moby#51033
  • Windows: network inspect: the HNS network name is now reported in option com.docker.network.windowsshim.networkname rather than the Docker network name, which was only reported after a daemon restart. moby/moby#50961
  • Windows: when restoring networks on daemon restart, preserve their association with non-default IPAM drivers. moby/moby#50649

API

  • events API now reports content-type as application/x-ndjson for newline-delimited JSON event stream. moby/moby#50953
  • GET /images/{name}/get and POST /images/load now accept multiple platform query parameters, allowing export and load of images for multiple platforms. moby/moby#50166
  • GET /images/{name}/json now omits the following fields if their value is empty: Parent, Comment, DockerVersion, Author. moby/moby#51072
  • GET /images/{name}/json: omit empty Config fields when not set. moby/moby#50915
  • POST /images/{name:}/push: remove compatibility with API v1.4 auth-config in body. moby/moby#50371
  • Add support for memory swappiness in Swarm services. moby/moby#51114
    • GET /services now returns SwapBytes and MemorySwappiness fields as part of the Resource requirements
    • GET /services/{id} now returns SwapBytes and MemorySwappiness fields as part of the Resource requirements
    • POST /services/create now accepts SwapBytes and MemorySwappiness fields as part of the Resource requirements
    • POST /services/{id}/update now accepts SwapBytes and MemorySwappiness fields as part of the Resource requirements
    • GET /tasks now returns SwapBytes and MemorySwappiness fields as part of the Resource requirements
    • GET /tasks/{id} now returns SwapBytes and MemorySwappiness fields as part of the Resource requirements
  • api/types/build: move CachePruneOptions type to client.BuildCachePruneOptions. moby/moby#50772
  • api/types/checkpoint: move checkpoint options to client module. moby/moby#50905
  • api/types/container: OnBuild will now be omitted if its value is empty or zero. moby/moby#51154
  • api/types/container: make the container config MacAddress obsolete for v1.52 and onwards. Use network endpoint settings instead. moby/moby#51189
  • api/types/container: move ResizeOptions type to ContainerResizeOptions in the client. moby/moby#50773
  • api/types/events: move ListOptions type to the client EventsListOptions. moby/moby#50774
  • api/types/image: move image options out to the client. moby/moby#50776
  • api/types/network: move CreateOptions, ConnectOptions and DisconnectOptions to the client module. moby/moby#50817
  • api/types/network: move the ListOptions and InspectOptions types to the client. moby/moby#50786
  • api/types/registry: move SearchOptions to ImageSearchOptions in the client. moby/moby#50787
  • api/types/registry: moved ServiceConfig legacy field marshaling support into daemon backend. moby/moby#50826
  • api/types/registry: moved encode/decode auth config functions into reference utility package. moby/moby#50785
  • api/types/storage: add Storage type and integrate in container inspect. moby/moby#50857
  • api/types/swarm: deprecated and dropped support for PortConfigProtocol; use network.IPProtocol instead. moby/moby#51094
  • api/types/swarm: move option types to the client module. moby/moby#50794
  • api/types/swarm: move the SecretListOptions type to the client module. moby/moby#50816
  • api/types/system: move DiskUsageOptions to the client. moby/moby#50788
  • api/types/system: move SecurityOpt and DecodeSecurityOptions to client module. moby/moby#50825
  • api/types/volume: move the ListOptions type to the client module. moby/moby#50789
  • api/types/volume: moved UpdateOptions into client module. moby/moby#51205
  • api/types: daemon: move the disk usage structs to the backend server. moby/moby#50764
  • api: make GraphDriver field in image.InspectResponse optional. This field will continue to be emitted when using the legacy graph drivers and will be omitted when using the containerd image backend. moby/moby#50893
  • api: redefine container network port types. moby/moby#50710
  • Inspecting networks with API v1.52 and newer provides statistics about IPAM allocations for the subnets assigned to the network. moby/moby#50917
  • MAC address fields are represented as byte slices compatible with the standard library net.HardwareAddr type instead of strings. moby/moby#51355
  • Swagger definitions for NetworkSummary and NetworkInspect have been added to the Swagger spec describing the Engine API. moby/moby#50855
  • Update API version to 1.52. moby/moby#50418

Go SDK

  • api/pkg/progress and api/pkg/streamformatter have been removed. moby/moby#51153
  • api/types/registry: EncodeAuthConfig: use empty string for zero value. moby/moby#50426
  • api/types/versions has moved to the client and daemon. moby/moby#51284
  • client.ConfigCreate, client.ConfigList, client.ConfigInspectWithRaw, client.ConfigUpdate, and client.ConfigRemove methods now accept option structs instead of positional arguments, and return dedicated result structs. moby/moby#51078
  • client.ImageBuild, client.BuildCancel, client.ImageList, client.ImageRemove, client.ImageTag, and client.ImageSearch methods now accept option structs instead of positional arguments, and return dedicated result structs. moby/moby#51227
  • client: ContainerExec... methods were renamed to Exec.... moby/moby#51262
  • client: Wrap return values of ImageInspect, ImageHistory, ImageLoad and ImageSave in a struct. moby/moby#51236
  • ImagePull now returns an object with JSONMessages method returning iterator over the message objects. moby/moby#50935
  • ImagePush now returns an object with JSONMessages method returning iterator over the message objects. moby/moby#51148
  • api/types/container: move StatsResponseReader to client package. moby/moby#50521
  • api/types/container: move container options to client. moby/moby#50897
  • api/types/container: rename Port to PortSummary. moby/moby#50711
  • api/types/container: StatsResponse: add OSType field. moby/moby#51305
  • api/types: move ErrorResponse to common/ErrorResponse. moby/moby#50632
  • api: remove unused DefaultVersion, MinSupportedAPIVersion consts. moby/moby#50587
  • cli/command: add WithUserAgent option. docker/cli#4574
  • client: ContainerCommitOptions: remove Pause field in favor of NoPause. moby/moby#51019
  • client: add DefaultAPIVersion const, which defines the default (and maximum) API version supported by the client. moby/moby#50433
  • client: add ExecAPIClient interface for exec methods provided by the client. moby/moby#50997
  • client: Client.PluginList: add options-struct. moby/moby#51207
  • client: ContainersPrune: rewrite to use option structs and result. moby/moby#51200
  • client: ImagesPrune: rewrite to use option structs and result. moby/moby#51200
  • client: NetworksPrune: rewrite to use option structs and result. moby/moby#51200
  • client: remove client.ContainerStatsResult.OSType field. moby/moby#51305
  • client: VolumesPrune: rewrite to use option structs and result. moby/moby#51200
  • daemon/config: add DefaultAPIVersion const, which defines the default (and maximum) API version supported by the daemon. moby/moby#50436
  • Fix data race in ContainerExecStart, ContainerList, and Events. moby/moby#50448
  • IP addresses and subnets are now of type netip.Addr and netip.Prefix, respectively. moby/moby#50956
  • Remove structs NetworkSettingsBase and DefaultNetworkSettings. Fields in NetworkSettingsBase that were not deprecated are now directly in NetworkSettings. moby/moby#50846
  • the client now uses its own client.Filters type for filtering API requests, with a more ergonomic interface. Users of the github.com/docker/docker/api/types/filters package will need to refactor when they upgrade to the v29 client. moby/moby#51115
  • Types "github.com/moby/moby/api/types/network".Summary and "github.com/moby/moby/api/types/network".Inspect are no longer aliases, and most of their fields have been moved into an embedded struct. Engine API clients may require some source-level changes when migrating to the new github.com/moby/moby/api module. moby/moby#50878
  • Update minimum go version to go1.24. docker/cli#6624

Deprecations

  • client/pkg/jsonmessage: remove deprecated ProgressMessage, ErrorMessage, DisplayJSONMessagesToStream and Stream interface. moby/moby#49264
  • GET /events no longer includes the deprecated status, id, and from fields. These fields were removed in API v1.22, but still included in the response. These fields are now omitted when using API v1.52 or later. moby/moby#50832
  • api/types/network: CreateRequest: remove deprecated CheckDuplicate field. moby/moby#50998
  • api/types/plugin: deprecate Config.DockerVersion field. moby/moby#51109
  • api/types/registry: remove deprecated AuthConfig.Email field. moby/moby#51059
  • api/types/strslice: deprecate StrSlice in favor of using a regular []string. moby/moby#50292
  • api/types/sytem: remove deprecated DiskUsage.BuilderSize. moby/moby#51180
  • api/types: move plugin types to api/types/plugin. moby/moby#48114
  • API: Deprecation: the Engine was automatically backfilling empty PortBindings lists with a PortBinding with an empty HostIP and HostPort when starting a container. This behavior is deprecated for API 1.52, and will be dropped in API 1.53. moby/moby#50874
  • build: remove DCT support for classic builder. docker/cli#6195
  • cli/command: Remove deprecated ResolveDefaultContext. docker/cli#6555
  • client: ImageBuildResponse: remove OSType field. moby/moby#50995
  • client: Remove ImageCreate method - useImagePull or ImageImport instead. moby/moby#51366
  • client: remove deprecated ImageListOptions.ContainerCount. moby/moby#51006
  • client: remove support for negotiating API version < v1.44 (docker 25.0). moby/moby#51119
  • client: remove unused Client.HTTPClient() method. moby/moby#51011
  • daemon/graphdriver: remove deprecated GetDriver(). moby/moby#50377
  • daemon: raise minimum API version to v1.44. moby/moby#51186
  • Deprecate the --pause flag on docker commit in favor of --no-pause. docker/cli#6460
  • Deprecate cgroup v1. moby/moby#51360, docker/cli#6598
  • Go SDK: api/types/system: remove deprecated Commit.Expected field. moby/moby#51127
  • Go SDK: cli-plugins/manager: deprecate metadata aliases in favor of their equivalent in cli-plugins/manager/metadata. docker/cli#6237
  • Go SDK: cli-plugins/manager: remove Candidate interface, which was only for internal use. docker/cli#6237
  • Go SDK: cli-plugins/manager: remove NewPluginError function, which was only for internal use. docker/cli#6237
  • Go SDK: cli-plugins/manager: remove deprecated ResourceAttributesEnvvar const. docker/cli#6237
  • Go SDK: cli/command: remove the ErrPromptTerminated, DisableInputEcho, PromptForInput, and PromptForConfirmation utilities. These utilities were for internal use and are no longer used. docker/cli#6243
  • Go SDK: cli/registry/client: remove deprecated RepoNameForReference. docker/cli#6206
  • Go SDK: api/types/build: remove deprecated BuildCache.Parent field. moby/moby#51185
  • Go SDK: api/types/container: remove deprecated ContainerTopOKBody alias. moby/moby#50400
  • Go SDK: api/types/container: remove deprecated ContainerUpdateOKBody alias. moby/moby#50400
  • Go SDK: api/types/container: remove deprecated Stats type. moby/moby#50492
  • Go SDK: api/types/filters: remove deprecated ToParamWithVersion. moby/moby#50561
  • Go SDK: api/types/image: InspectResponse: remove deprecated VirtualSize, Container, ContainerConfig, Parent, and DockerVersion fields. moby/moby#51103
  • Go SDK: api/types/image: remove deprecated Summary.VirtualSize field. moby/moby#51190
  • Go SDK: api/types/registry: remove deprecated ServiceConfig.AllowNondistributableArtifactsCIDRs and ServiceConfig.AllowNondistributableArtifactsHostnames fields. moby/moby#50375
  • Go SDK: api/types/swarm: remove deprecated ServiceSpec.Networks field. moby/moby#51184
  • Go SDK: api/types: remove deprecated aliases. moby/moby#50452
  • Go SDK: api: deprecate NoBaseImageSpecifier const. This const is no longer used and will be removed in the next release. moby/moby#50437
  • Go SDK: api: remove NoBaseImageSpecifier. moby/moby#50574
  • Go SDK: cli/command/builder: remove CachePrune(), which was no longer used. docker/cli#6236
  • Go SDK: cli/command/builder: remove NewBuilderCommand and NewBakeStubCommand. docker/cli#6335
  • Go SDK: cli/command/checkpoint: remove NewCheckpointCommand. docker/cli#6335
  • Go SDK: cli/command/checkpoint: remove deprecated NewFormat, FormatWrite. docker/cli#6339
  • Go SDK: cli/command/completion: remove deprecated NoComplete. docker/cli#6408
  • Go SDK: cli/command/config: remove NewConfigCommand. docker/cli#6335
  • Go SDK: cli/command/config: remove deprecated NewFormat, FormatWrite, InspectFormatWrite. docker/cli#6339
  • Go SDK: cli/command/config: remove deprecated RunConfigCreate, CreateOptions, RunConfigInspect, InspectOptions, RunConfigList, ListOptions, RunConfigRemove, and RemoveOptions. docker/cli#6370
  • Go SDK: cli/command/container: deprecate NewDiffFormat, DiffFormatWrite. These functions were only used internally and will be removed in the next release. docker/cli#6187
  • Go SDK: cli/command/container: remove NewBuildCommand, NewPullCommand, NewPushCommand, NewImagesCommand, NewImageCommand, NewHistoryCommand, NewImportCommand, NewLoadCommand, NewRemoveCommand, NewSaveCommand, NewTagCommand, NewPruneCommand. docker/cli#6335
  • Go SDK: cli/command/container: remove NewRunCommand, NewExecCommand, NewPsCommand, NewContainerCommand, NewAttachCommand, NewCommitCommand, NewCopyCommand, NewCreateCommand, NewDiffCommand, NewExportCommand, NewKillCommand, NewLogsCommand, NewPauseCommand, NewPortCommand, NewRenameCommand, NewRestartCommand, NewRmCommand, NewStartCommand, NewStatsCommand, NewStopCommand, NewTopCommand, NewUnpauseCommand, NewUpdateCommand, NewWaitCommand, NewPruneCommand. docker/cli#6335
  • Go SDK: cli/command/container: remove RunPrune(), which was no longer used. docker/cli#6236
  • Go SDK: cli/command/container: remove deprecated NewDiffFormat, DiffFormatWrite. docker/cli#6339
  • Go SDK: cli/command/context: remove NewContextCommand. docker/cli#6335
  • Go SDK: cli/command/context: remove deprecated RunCreate and CreateOptions. docker/cli#6407
  • Go SDK: cli/command/context: remove deprecated RunExport and ExportOptions. docker/cli#6407
  • Go SDK: cli/command/context: remove deprecated RunImport. docker/cli#6407
  • Go SDK: cli/command/context: remove deprecated RunRemove and RemoveOptions. docker/cli#6407
  • Go SDK: cli/command/context: remove deprecated RunUpdate and UpdateOptions. docker/cli#6407
  • Go SDK: cli/command/context: remove deprecated RunUse. docker/cli#6407
  • Go SDK: cli/command/formatter/swarm: remove deprecated GetStacks function. docker/cli#6406
  • Go SDK: cli/command/image/build: deprecate DefaultDockerfileName, DetectArchiveReader, WriteTempDockerfile, ResolveAndValidateContextPath. These utilities were only used internally and will be removed in the next release. docker/cli#6561
  • Go SDK: cli/command/image: remove RunPrune(), which was no longer used. docker/cli#6236
  • Go SDK: cli/command/image: remove deprecated AuthResolver utility. docker/cli#6373
  • Go SDK: cli/command/image: remove deprecated NewHistoryFormat, HistoryWrite. docker/cli#6339, docker/cli#6339
  • Go SDK: cli/command/manifest: remove NewManifestCommand. docker/cli#6335
  • Go SDK: cli/command/network: remove NewNetworkCommand. docker/cli#6335
  • Go SDK: cli/command/network: remove RunPrune(), which was no longer used. docker/cli#6236
  • Go SDK: cli/command/network: remove deprecated NewFormat, FormatWrite. docker/cli#6339
  • Go SDK: cli/command/node: remove NewNodeCommand. docker/cli#6335
  • Go SDK: cli/command/node: remove deprecated NewFormat, FormatWrite, InspectFormatWrite. docker/cli#6339
  • Go SDK: cli/command/plugin: remove NewPluginCommand. docker/cli#6335
  • Go SDK: cli/command/plugin: remove deprecated NewFormat, FormatWrite. docker/cli#6339
  • Go SDK: cli/command/registry: remove NewLoginCommand, NewLogoutCommand, NewSearchCommand. docker/cli#6335
  • Go SDK: cli/command/registry: remove deprecated NewSearchFormat, SearchWrite. docker/cli#6339
  • Go SDK: cli/command/registry: remove deprecated OauthLoginEscapeHatchEnvVar const. docker/cli#6463
  • Go SDK: cli/command/secret: remove NewSecretCommand. docker/cli#6335
  • Go SDK: cli/command/secret: remove deprecated NewFormat, FormatWrite, InspectFormatWrite. docker/cli#6339
  • Go SDK: cli/command/service: remove NewServiceCommand. docker/cli#6335
  • Go SDK: cli/command/service: remove deprecated NewFormat, InspectFormatWrite. docker/cli#6339
  • Go SDK: cli/command/stack/swarm: remove deprecated RunPS and options.PS. docker/cli#6398
  • Go SDK: cli/command/stack: remove NewStackCommand. docker/cli#6335
  • Go SDK: cli/command/stack: remove deprecated RunList and options.List. docker/cli#6398
  • Go SDK: cli/command/stack: remove deprecated RunServices and swarm.GetServices. docker/cli#6398
  • Go SDK: cli/command/swarm: remove NewSwarmCommand. docker/cli#6335
  • Go SDK: cli/command/system: remove NewVersionCommand, NewInfoCommand, NewSystemCommand, NewEventsCommand, NewInspectCommand. docker/cli#6335
  • Go SDK: cli/command/task: remove deprecated NewTaskFormat, FormatWrite. docker/cli#6339
  • Go SDK: cli/command/trust: remove NewTrustCommand. docker/cli#6335
  • Go SDK: cli/command/trust: remove deprecated NewPruneCommand. docker/cli#6344
  • Go SDK: cli/command/trust: remove deprecated SignedTagInfo, SignerInfo, NewTrustTagFormat, NewSignerInfoFormat, TagWrite, SignerInfoWrite. docker/cli#6339
  • Go SDK: cli/command/volume: remove NewVolumeCommand, NewPruneCommand. docker/cli#6335
  • Go SDK: cli/command/volume: remove RunPrune(), which was no longer used. docker/cli#6236
  • Go SDK: cli/command: remove AddTrustSigningFlags, AddTrustVerificationFlags, and AddPlatformFlag utilities, which were only used internally. docker/cli#6244
  • Go SDK: cli/command: remove deprecated DockerCli.Apply. docker/cli#6503
  • Go SDK: cli/command: remove deprecated DockerCli.ContentTrustEnabled. docker/cli#6502
  • Go SDK: cli/command: remove deprecated DockerCli.DefaultVersion. docker/cli#6502
  • Go SDK: cli/command: remove deprecated RegistryAuthenticationPrivilegedFunc. docker/cli#6349
  • Go SDK: cli/command: remove deprecated WithContentTrustFromEnv, WithContentTrust options. docker/cli#6502
  • Go SDK: cli/config/configfile: remove deprecated ConfigFile.Experimental field. docker/cli#6464
  • Go SDK: cli/config/types: remove deprecated AuthConfig.Email field. docker/cli#6515
  • Go SDK: cli/manifest/store: remove deprecated IsNotFound. docker/cli#6523
  • Go SDK: cli: remove deprecated VisitAll, DisableFlagsInUseLine utilities. docker/cli#6296
  • Go SDK: client: remove APIClient.ImageInspectWithRaw from the APIClient interface. moby/moby#50485
  • Go SDK: client: remove ImageAPIClient.ImageInspectWithRaw from the ImageAPIClient interface. moby/moby#50485
  • Go SDK: client: remove ImageAPIClientDeprecated.ImageInspectWithRaw from the ImageAPIClientDeprecated. moby/moby#50485
  • Go SDK: client: remove deprecated ErrorConnectionFailed and IsErrNotFound functions. moby/moby#50485
  • Go SDK: client: remove deprecated NewClient and NewEnvClient functions. moby/moby#50485
  • Go SDK: client: remove the CommonAPIClient interface. moby/moby#50485
  • Go SDK: client: remove the ImageAPIClientDeprecated interface. moby/moby#50485
  • Go SDK: client: remove the deprecated Client.ImageInspectWithRaw method. moby/moby#50485
  • Go SDK: container: remove deprecated IsValidHealthString. moby/moby#50378
  • Go SDK: container: remove deprecated IsValidStateString. moby/moby#50378
  • Go SDK: container: remove deprecated StateStatus, WaitCondition, and the related WaitConditionNotRunning, WaitConditionNextExit, and WaitConditionRemoved consts. moby/moby#50378
  • Go SDK: deprecate pkg/stdcopy, which was moved to api/stdcopy. moby/moby#50462
  • Go SDK: Deprecate field NetworkSettingsBase.Bridge, struct NetworkSettingsBase, all the fields of DefaultNetworkSettings, and struct DefaultNetworkSettings. moby/moby#50848
  • Go SDK: deprecate pkg/stringid in favour of github.com/moby/moby/client/pkg/stringid. moby/moby#50504
  • Go SDK: deprecate profiles package which got migrated to github.com/moby/profiles. moby/moby#50481
  • Go SDK: oci: deprecate SetCapabilities, and some minor cleanups/fixes. moby/moby#50461
  • Go SDK: opts: remove deprecated ListOpts.GetAll. It's no longer used and replaced by ListOpts.GetSlice. docker/cli#6293
  • Go SDK: opts: remove deprecated NewNamedListOptsRef, NewNamedMapOpts, NamedListOpts, NamedMapOpts, and NamedOption. These types and functions are no longer used and will be removed in the next release. docker/cli#6293
  • Go SDK: opts: remove deprecated ParseEnvFile in favour of kvfile.Parse. docker/cli#6382
  • Go SDK: opts: remove deprecated QuotedString. docker/cli#6293
  • Go SDK: opts: remove deprecated ValidateHost. docker/cli#6293
  • Go SDK: pkg/system was removed, and is now an internal package. moby/moby#50559
  • Go SDK: pkg/system: deprecate EscapeArgs() and IsAbs. These functions were only used internally and will be removed in the next release. moby/moby#50399
  • Go SDK: registry: remove deprecated APIEndpoint.TrimHostName, APIEndpoint.Official, and APIEndpoint.AllowNondistributableArtifacts fields. moby/moby#50376
  • Go SDK: registry: remove deprecated HostCertsDir() and SetCertsDir() functions. moby/moby#50373
  • Go SDK: registry: remove deprecated RepositoryInfo.Official and RepositoryInfo.Class field. moby/moby#50498
  • Go SDK: registry: remove deprecated Service.ResolveRepository(). moby/moby#50374
  • Go SDK: Remove buildkit.ClientOpts. moby/moby#50318
  • Go SDK: remove pkg/fileutils. moby/moby#50558
  • Go SDK: Remove deprecated IsNotFound, CommandAnnotationPlugin, CommandAnnotationPluginVendor, CommandAnnotationPluginVersion, CommandAnnotationPluginInvalid, CommandAnnotationPluginCommandPath, NamePrefix, MetadataSubcommandName, HookSubcommandName, Metadata, and ReexecEnvvar from cli-plugins/manager in favor of their cli-plugins/manager/metadata equivalents. docker/cli#6414
  • Go SDK: remove deprecated types/plugins/logdriver and types/swarm/runtime packages; plugin-runtime spec is now exposed as types/swarm.RuntimeSpec and types/swarm.RuntimePrivilege. moby/moby#50554
  • Go SDK: remove deprecated cli/command/formatter package. docker/cli#6406
  • Go SDK: remove deprecated cli/registry/client package. docker/cli#6462
  • Go SDK: remove deprecated pkg/idtools package. moby/moby#50456
  • Go SDK: templates: remove deprecated NewParse function. docker/cli#6453
  • Hide the --kernel-memory option on docker run and docker create, and produce a warning when used as it's no longer supported by the daemon and kernel. docker/cli#6455
  • Remove VirtualSize field from docker image ls output when using JSON format. docker/cli#6524
  • Remove VirtualSize formatting options and output. docker/cli#6524
  • Remove API version compatibility for API version v1.44 and earlier (Docker v24.0 and older). docker/cli#6551
  • Remove deprecated bind-nonrecursive option for --mount. docker/cli#6241
  • Remove deprecated packages (pkg/archive, pkg/chrootarchive, pkg/atomicwriter, pkg/reexec, pkg/platform, pkg/parsers), pkg/system.MkdirAll. For replacements, see github.com/moby/go-archive, github.com/moby/sys and the standard library. moby/moby#50208
  • Remove special handling for quoted values for the --tlscacert, --tlscert, and --tlskey command-line flags. docker/cli#6306
  • Remove support for AutoRemove (--rm) on API < 1.30. docker/cli#6525
  • Remove support for loading legacy (pre-Docker 1.10) images. moby/moby#50324