Skip to content

Commit

Permalink
engine: add release note content after maintainers review
Browse files Browse the repository at this point in the history
  • Loading branch information
David Karlsson committed Jan 20, 2023
1 parent fabf547 commit 51d3c3d
Showing 1 changed file with 133 additions and 13 deletions.
146 changes: 133 additions & 13 deletions engine/release-notes/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,36 +13,156 @@ redirect_from:
This document describes the latest changes, additions, known issues, and fixes
for Docker Engine.

# Version 23.0

## 23.0.0
{% include release-date.html date="2023-01-01" %}

This release of Docker Engine contains updated versions of Docker Compose,
Docker Scan, Containerd, and some minor bug fixes and enhancements.
{% include release-date.html date="2023-02-01" %}

### New

-
- Set Buildx and BuildKit as the default builder on Linux. [moby/moby#43992](https://github.com/moby/moby/pull/43992)
- Alias `docker build` to `docker buildx build`. [docker/cli#3314](https://github.com/docker/cli/pull/3314)
- The legacy builder can still be used by explicitly setting `DOCKER_BUILDKIT=0`.
- Added support for pulling `zstd` compressed layers. [moby/moby#41759](https://github.com/moby/moby/pull/41759), [moby/moby#42862](https://github.com/moby/moby/pull/42862)
- Added support for alternate OCI runtimes on Linux, compatible with the containerd runtime v2 API. [moby/moby#43887](https://github.com/moby/moby/pull/43887), [moby/moby#43993](https://github.com/moby/moby/pull/43993)
- Added support for the v2 containerd `runhcs` shim on Windows (off by default). [moby/moby#42089](https://github.com/moby/moby/pull/42089)
- Added `dockerd --validate` to check the daemon JSON config and exit. [moby/moby#42393](https://github.com/moby/moby/pull/42393)
- Added the ability to configure the daemon's HTTP proxy via flags or JSON config [moby/moby#42835](https://github.com/moby/moby/pull/42835)
- Added support for RFC 3021 point-to-point networks (IPv4 /31s) and single hosts (IPv4 /32s). For networks with two or fewer addresses, IPAM will not reserve a network and broadcast address. [moby/moby#42626](https://github.com/moby/moby/pull/42626)
- Added support for setting `ipvlan_flag` and using the `l3s` `ipvlan_mode` in the `ipvlan` network driver. [moby/moby#42542](https://github.com/moby/moby/pull/42542)
- Added reporting of the overlayfs metacopy state in the `overlay2` storage driver. [moby/moby#43557](https://github.com/moby/moby/pull/43557)
- Added support for describing Windows devices using the syntax `IDType://ID`.[moby/moby#43368](https://github.com/moby/moby/pull/43368)
- Added `RootlessKit`, `slirp4netns`, and `VPNKit` version reporting. [moby/moby#42330](https://github.com/moby/moby/pull/42330)
- Added experimental support for SwarmKit cluster volumes (CSI). [moby/moby#41982](https://github.com/moby/moby/pull/41982)
- CLI: Added cluster volume (CSI) options to `docker volume`. [docker/cli#3606](https://github.com/docker/cli/pull/3606)
- CLI: Added cluster volume (CSI) support to `docker stack`. [docker/cli#3662](https://github.com/docker/cli/pull/3662)
- Added support for SwarmKit jobs in `docker stack deploy`. [docker/cli#2907](https://github.com/docker/cli/pull/2907)
- Added the `docker stack config` command to output the merged and interpolated config files as utilized by `stack deploy`. [docker/cli#3544](https://github.com/docker/cli/pull/3544)
- Added a new `docker context show` command that prints the name of the current context. [docker/cli#3567](https://github.com/docker/cli/pull/3567)
- Added a `--format=json` option to `docker inspect` and `docker list`. [docker/cli#2936](https://github.com/docker/cli/pull/2936)
- Added a `--quiet` option to `docker create` and `docker run` commands to suppress output when pulling an image. [docker/cli#3377](https://github.com/docker/cli/pull/3377)
- Added a `--force` option to `docker network rm` subcommand. Causes CLI to return a 0 exit code even if the network does not exist. Has no effect on the server-side procedure for removing a network. [docker/cli#3547](https://github.com/docker/cli/pull/3547)
- Added a `--signal` option to `docker stop` and `docker restart`. [docker/cli#3614](https://github.com/docker/cli/pull/3614)
- Allow use of `STOPSIGNAL` via `docker commit`. [moby/moby#43369](https://github.com/moby/moby/pull/43369)
- Added a new option to the `awslogs` log driver to allow skipping log stream creation in CloudWatch. [moby/moby#42132](https://github.com/moby/moby/pull/42132)
- Added a new option to the `awslogs` log driver to specify the log format that is sent to CloudWatch. [moby/moby#42838](https://github.com/moby/moby/pull/42838)
- Added a new option to the `fluentd` log driver to set the reconnection interval. [moby/moby#43100](https://github.com/moby/moby/pull/43100)
- Added new options-setters to the Go API client: `WithTLSClientConfigFromEnv()`, `WithHostFromEnv()`, and `WithVersionFromEnv()`. [moby/moby#42224](https://github.com/moby/moby/pull/42224)
- Added generation of shell command completion through `docker completion` subcommand. [docker/cli#3429](https://github.com/docker/cli/pull/3429)
- API: Added a `Swarm` header to `GET /_ping` and `HEAD /_ping`, allowing single-request detection of Swarm support. [moby/moby#42064](https://github.com/moby/moby/pull/42064)
- API: Added a `signal` parameter to `POST /containers/{id}/stop` and `POST /containers/{id}/restart` to set the signal used. [moby/moby#43206](https://github.com/moby/moby/pull/43206)
- API: Added a `CreateMountPoint` parameter to `POST /containers/create`. [moby/moby#43484](https://github.com/moby/moby/pull/43484)
- API: Added a `shared-size` parameter to `GET /images/json` to enable shared-size computation of images. [moby/moby#42531](https://github.com/moby/moby/pull/42531)
- API: Added a `type` parameter to `GET /system/df`, to control what object types to are considered when computing disk usage. [moby/moby#42559](https://github.com/moby/moby/pull/42559)
- systemd: Start `docker.service` after `time-set.target`. [moby/moby#43107](https://github.com/moby/moby/pull/43107)

### Removed

-
- Removed support for reading configuration from `~/.dockercfg`. [docker/cli#2504](https://github.com/docker/cli/pull/2504)
This location has been deprecated since 1.7.0.
- Removed the `-g` and `--graph` daemon options in favor of `--data-root`. [docker/cli#3739](https://github.com/docker/cli/pull/3739)
These options have been hidden and deprecated since 17.05.
- Require explicit configuration to use deprecated storage drivers, and don't automatically select them when upgrading. [moby/moby#43378](https://github.com/moby/moby/pull/43378)
- Removed deprecated support for `overlay` and `overlay2` storage drivers on backing filesystems without `d_type` support. [moby/moby#43472](https://github.com/moby/moby/pull/43472)
- Removed the deprecated `overrideKernelCheck` option from the `overlay2` storage driver. [moby/moby#44279](https://github.com/moby/moby/pull/44279)
- Removed support for the deprecated `io.containerd.runtime.v1.linux` OCI runtime. [moby/moby#43695](https://github.com/moby/moby/pull/43695)
- Removed LCOW (Linux Containers on Windows). [moby/moby#42451](https://github.com/moby/moby/pull/42451), [moby/moby#42499](https://github.com/moby/moby/pull/42499), [moby/moby#42506](https://github.com/moby/moby/pull/42506), [moby/moby#42511](https://github.com/moby/moby/pull/42511), [moby/moby#42520](https://github.com/moby/moby/pull/42520), [moby/moby#42683](https://github.com/moby/moby/pull/42683), [moby/moby#42684](https://github.com/moby/moby/pull/42684), [moby/moby#42685](https://github.com/moby/moby/pull/42685), [moby/moby#43187](https://github.com/moby/moby/pull/43187)
LCOW was introduced as a technical preview in 17.09 and deprecated in 20.10.
- Removed daemon options related to legacy overlay networks, which were used with "standalone" Swarm.
- Removed `--cluster-xx` options from `dockerd`. [moby/moby#40383](https://github.com/moby/moby/issues/40383)
- Removed `host-discovery` and overlay networks with external k/v stores. [moby/moby#42247](https://github.com/moby/moby/pull/42247)
- Removed a deprecated `arm` platform fallback. `--platform linux/arm/vY` will now return a error when `arm/vY` is not available instead of pulling the wrong image. [moby/moby#44414](https://github.com/moby/moby/pull/44414)
- Removed the deprecated `SetCustomHTTPHeaders()`, `CustomHTTPHeaders()` options-setters from the Go client API. [moby/moby#42694](https://github.com/moby/moby/pull/42694)
- Removed the deprecated `WithDialer()` option-setter from the Go client API. [moby/moby#44022](https://github.com/moby/moby/pull/44022)
Users should use `WithDialContext()` instead.
- Removed the daemon implementation of `opts.QuotedString`, which was moved to CLI. [moby/moby#43250](https://github.com/moby/moby/pull/43250)
- Removed separate daemon ID from trust-key in the daemon, and disable generating the trust-key. [moby/moby#43555](https://github.com/moby/moby/pull/43555)
- API: Removed the deprecated `KernelMemory` option from `POST /containers/create` on API >= 1.42. [moby/moby#43214](https://github.com/moby/moby/pull/43214)

### Deprecated

-
- Require Windows Server RS5 / LTSC 2019 (build 17763) as the minimum to run the daemon. [moby/moby#43254](https://github.com/moby/moby/pull/43254)
- Deprecated `BuilderSize` in API versions >= 1.42 [moby/moby#42608](https://github.com/moby/moby/pull/42608)
- Deprecated `BuildCache.Parent` in favor of the newly introduced `BuildCache.Parents` in API >= v1.42. [moby/moby#43908](https://github.com/moby/moby/pull/43908)
- Deprecated `pkg/urlutil`, moving the implementation to `builder/remotecontext/urlutil`. [moby/moby#43477](https://github.com/moby/moby/pull/43477)

### Updates

-
- Update Go to `1.19.5`. [docker/cli#3958](https://github.com/docker/cli/pull/3958), [moby/moby#44794](https://github.com/moby/moby/pull/44794)
- Update `rootlesskit` to `v0.14.4`. [moby/moby#42708](https://github.com/moby/moby/pull/42708)
- Update `buildkit` to `v0.10.0`. [moby/moby#43239](https://github.com/moby/moby/pull/43239)
- Update `swarmkit` to `v2.0.0-20221215132206-0da442b2780f`. [moby/moby#44652](https://github.com/moby/moby/pull/44652)
- Update `containerd` to `v1.6.15`. [moby/moby#44766](https://github.com/moby/moby/pull/44766), [moby/moby#44769](https://github.com/moby/moby/pull/44769)
- Update `runc` to `v1.1.4`. [moby/moby#44039](https://github.com/moby/moby/pull/44039)
- Update `hcsshim` `v0.9.6`. [moby/moby#44658](https://github.com/moby/moby/pull/44658)

### Security

-
- Change permissions on container `hostconfig.json` files to `0600` (was `0644`). [moby/moby#41620](https://github.com/moby/moby/pull/41620)
- Fixed `--seccomp-profile` not accepting `unconfined` and rename the default seccomp profile to `builtin`. [moby/moby#42481](https://github.com/moby/moby/pull/42481)
- Always build with seccomp support, and remove the `seccomp` build tag. [moby/moby#42501](https://github.com/moby/moby/pull/42501)
- Added seccomp support on `riscv64`. [moby/moby#43553](https://github.com/moby/moby/pull/43553)
- Added support for setting flags passed to `seccomp(2)` in seccomp profiles. [moby/moby#42648](https://github.com/moby/moby/pull/42648)
- Refactored seccomp types to reuse runtime-spec, and add support for `ErrnoRet`. [moby/moby#42005](https://github.com/moby/moby/pull/42005)
- Added support for `DefaultErrnoRet` in `seccomp` profiles. [moby/moby#42604](https://github.com/moby/moby/pull/42604)
- Added an explicit `DefaultErrnoRet` field to the default seccomp profile, with no behavior change. [moby/moby#42649](https://github.com/moby/moby/pull/42649)
- Blocked `socket` with `AF_VSOCK` in the default seccomp profile. [moby/moby#44563](https://github.com/moby/moby/pull/44563)
- Re-enabled `process_vm_readv` and `process_vm_writev` in the default seccomp profile. [moby/moby#42083](https://github.com/moby/moby/pull/42083)
- Added syscalls related to PKU to the default seccomp profile. [moby/moby#43812](https://github.com/moby/moby/pull/43812)
- Allowed `clock_settime64` with `CAP_SYS_TIME`. [moby/moby#43775](https://github.com/moby/moby/pull/43775)
- Allowed `bpf` with `CAP_BPF` and `perf_event_open` with `CAP_PERFMON`. [moby/moby#43988](https://github.com/moby/moby/pull/43988)
- Explicitly set the `clone3` syscall to return `ENOSYS` in order to ensure `glibc` will correctly fallback to using `clone`. [moby/moby#42681](https://github.com/moby/moby/pull/42681)

### Bug fixes and enhancements

-

### Known issues
- Promoted `overlay2` to be the default storage driver (`btrfs` and `zfs` are now opt-in). [moby/moby#42661](https://github.com/moby/moby/pull/42661)
- Added spinner loading to `docker cp` command. [docker/cli#2708](https://github.com/docker/cli/pull/2708)
- Deprecated the `ElectAuthServer` function, and made it return the default registry without calling the `GET /info` API endpoint. [docker/cli#2819](https://github.com/docker/cli/pull/2819)
- Progress bars are no longer reversed when rolling back Swarm services [docker/cli#2940](https://github.com/docker/cli/pull/2940)
- Use `net.JoinHostPort()` to fix formatting with IPv6 addresses [docker/cli#2972](https://github.com/docker/cli/pull/2972)
- CLI: error messages are now printed to `stderr`. [docker/cli#3044](https://github.com/docker/cli/pull/3044)
- Improved performance of `docker info` if a custom `--format` is used that only uses local information. With this change, the CLI only uses the daemon API if it detects that information from the daemon is needed. [docker/cli#3179](https://github.com/docker/cli/pull/3179)
- Removed default value from `--stop-signal` flag, as it may not reflect the actual default used by the daemon. [docker/cli#3245](https://github.com/docker/cli/pull/3245)
- Added Compose schema `3.10` to `docker stack`; allow omitting the `version` field (resulting in `latest`). [docker/cli#3257](https://github.com/docker/cli/pull/3257)
- Made Compose version `3` equivalent to `3.x` (latest) in `docker stack`. [docker/cli#3445](https://github.com/docker/cli/pull/3445)
- Fixed `ctrl-c` hanging on Windows to exit after running a container in non-interactive mode. [docker/cli#3302](https://github.com/docker/cli/pull/3302)
- Added relative source paths to `run` command in `-v`/`--volume` and `-m`/`--mount` flags. [docker/cli#3469](https://github.com/docker/cli/pull/3469)
- Removed the client-side sorting of results, in favor of the order in which the search API returns. [docker/cli#3470](https://github.com/docker/cli/pull/3470)
- Removed `printStorageDriverWarnings()` function in `cli/command/system`, and documentation updates over deprecation status of `aufs`, `overlay`, `devicemapper`, and `--kernel-memory(-tcp)` [docker/cli#3542](https://github.com/docker/cli/pull/3542)
- Removed `Experimental` client field from `docker version`. [docker/cli#3543](https://github.com/docker/cli/pull/3543)
- `docker exec -t` now sets the console size for the executed process immediately when it's created. [docker/cli#3627](https://github.com/docker/cli/pull/3627)
- Updated the pretty-print format of `docker info` to provide more details on installed plugins. [docker/cli#3645](https://github.com/docker/cli/pull/3645)
- Print appropriate warning messages on `docker context list` and `docker context use`. [docker/cli#3668](https://github.com/docker/cli/pull/3668)
- Added a custom `aliases` annotation that can be used to print all available aliases for a command. [docker/cli#3694](https://github.com/docker/cli/pull/3694)
- The client no longer creates or updates the CLI config file when running `docker context use` and the selected context is the current context. [docker/cli#3721](https://github.com/docker/cli/pull/3721)
- Added support to ignore non-existing contexts when running `docker context rm --force`. [docker/cli#3791](https://github.com/docker/cli/pull/3791)
- Added the ability to override ints to `0` in compose files [docker/cli#3812](https://github.com/docker/cli/pull/3812)
- Updated vendor `github.com/moby/term` to fix interrupt signal (Ctrl-C) handling. [docker/cli#3849](https://github.com/docker/cli/pull/3849)
- Improved `docker port CONTAINER` UX by sorting ports before printing. [docker/cli#3892](https://github.com/docker/cli/pull/3892)
- Attach API now reports which raw-stream format is in use using the `Content-type` response header. [moby/moby#39812](https://github.com/moby/moby/pull/39812)
- Set default sandbox size for WCOW to 127GB, and ensure storage-opts is honoured on all paths under WCOW. [moby/moby#41636](https://github.com/moby/moby/pull/41636)
- Removed the plugin section from the containerd configuration file `(/var/run/docker/containerd/containerd.toml)`. [moby/moby#41675](https://github.com/moby/moby/pull/41675)
- Reject `null` manifests during tar import. [moby/moby#41842](https://github.com/moby/moby/pull/41842)
- Added shim config for custom runtimes for plugins. [moby/moby#41854](https://github.com/moby/moby/pull/41854)
- Container health checks now resume when the daemon is restarted. [moby/moby#41935](https://github.com/moby/moby/pull/41935)
- Quota is no longer disabled on cleanup of the `btrfs` driver. [moby/moby#42273](https://github.com/moby/moby/pull/42273)
- (Accessible) host devices can now be mounted in `--privileged` rootless containers. [moby/moby#42638](https://github.com/moby/moby/pull/42638)
- Fixed incorrect handling of `**/foo` pattern in `fileutils`. [moby/moby#42676](https://github.com/moby/moby/pull/42676)
- Added the ability to pass a `--platform` flag on `docker import` when importing an archive [moby/moby#43103](https://github.com/moby/moby/pull/43103)
- Validation of CPU Realtime options is now performed when the daemon starts instead of performing validations for each individual container, so that we can fail early. [moby/moby#43131](https://github.com/moby/moby/pull/43131)
- Freeze the `namesgenerator` package against new additions. Users will have to be satisfied with the existing 25359 adjective-name combinations. [moby/moby#43210](https://github.com/moby/moby/pull/43210)
- Attach `containers/{ID}/attach/ws` only to streams according by stdin, stdout and stderr parameters. [moby/moby#43322](https://github.com/moby/moby/pull/43322)
- Fixed UDP traffic in containers not working after the container is restarted on sustained traffic. [moby/moby#43409](https://github.com/moby/moby/pull/43409)
- Added support for pulling images with custom amd64 variants that are used by the latest Go, GCC, LLVM etc. [moby/moby#43434](https://github.com/moby/moby/pull/43434)
- Improved validation of invalid JSON requests in the API.
[moby/moby#43463](https://github.com/moby/moby/pull/43463)
- Mitigated the impact of slow `exec` starts on health checks. Health check timeout now applies only to the duration that the health-check command is running. The time it takes to start the command no longer counts against the timeout. [moby/moby#43480](https://github.com/moby/moby/pull/43480)
- Console `tty` size is set immediately on creation. [moby/moby#43593](https://github.com/moby/moby/pull/43593), [moby/moby#43622](https://github.com/moby/moby/pull/43622)
- Fixed `daemon.Shutdown`, and `daemon.Cleanup` not cleaning up `overlay2` mounts. [moby/moby#43659](https://github.com/moby/moby/pull/43659)
- Match manifest list resolution with `containerd`. [moby/moby#43675](https://github.com/moby/moby/pull/43675)
- Skip `firewalld` management for RootlessKit in libnetwork. [moby/moby#43813](https://github.com/moby/moby/pull/43813)
- Custom NAT networks are now re-created after daemon restart if missing from HNS on Windows. [moby/moby#43858](https://github.com/moby/moby/pull/43858)
- Fixed terminating the container health-check process when it times out. [moby/moby#43994](https://github.com/moby/moby/pull/43994)
- Fixed `live-restore` with restart policies and volume refs. [moby/moby#44237](https://github.com/moby/moby/pull/44237)
- Only anonymous volumes now pruned by default on API >= v1.42. Pass the filter `all=true` to prune named volumes in addition to anonymous. [moby/moby#44259](https://github.com/moby/moby/pull/44259)
- API: Support concurrent calls on the `GET /system/df` endpoint.
[moby/moby#42715](https://github.com/moby/moby/pull/42715)

0 comments on commit 51d3c3d

Please sign in to comment.