v5.2.0-RC2
Pre-release
Pre-release
Features
- Quadlet now has support for
.buildfiles, which allows images to be built by Quadlet and then used by Quadlet containers. - Quadlet
.containerfiles now support two new fields,LogOptto specify container logging configuration andStopSignalto specify container stop signal (#23050). - Quadlet
.containerand.podfiles now support a new field,NetworkAlias, to add network aliases. - Quadlet drop-in search paths have been expanded to include top-level type drop-ins (
container.d,pod.d) and truncated unit drop-ins (unit-.container.d) (#23158). - Podman now supports a new command,
podman system check, which will identify (and, if possible, correct) corruption within local container storage. - The
podman machine resetcommand will now reset all providers available on the current operating system (e.g. ensuring that both HyperV and WSLpodman machineVMs will be removed on Windows).
Changes
- Podman now requires the new kernel mount API, introducing a dependency on Linux Kernel v5.2 or higher.
- Quadlet
.imageunits now have a dependency onnetwork-online.target(#21873). - The
--deviceoption topodman createandpodman runis no longer ignored when--privilegedis also specified (#23132). - The
podman startandpodman stopcommands no longer print the full ID of the pod started/stopped, but instead the user's input used to specify the pod (e.g.podman pod start bwill printbinstead of the pod's full ID) (#22590). - Virtual machines created by
podman machineon Linux now usevirtiofsinstead of9pfor mounting host filesystems. Existing mounts will be transparently changed on machine restart or recreation. This should improve performance and reliability of host mounts. - Using both the
--squashand--layers=falseoptions topodman buildat the same time is now allowed. - Podman now passes container's stop timeout to systemd when creating cgroups, causing it to be honored when systemd stops the scope. This should prevent hangs on system shutdown due to running Podman containers.
- The
--volume-driveroption topodman machine initis now deprecated.
Bugfixes
- Fixed a bug where rootless containers created with the
--sdnotify=healthyoption could panic when started (#22651). - Fixed a bug where containers created with the
--sdnotify=healthyoption that exited quickly would sometimes return an error instead of notifying that the container was ready (#22760). - Fixed a bug where the
podman system resetcommand did not remove the containers/image blob cache (#22825). - Fixed a bug where Podman would sometimes create a cgroup for itself even when the
--cgroups=disabledoption was specified at container creation time (#20910). - Fixed a bug where the
/etc/hostsfile in a container was not created with a newline at the end of the file (#22729). - Fixed a bug where the
podman startcommand could sometimes panic when starting a container in the stopped state. - Fixed a bug where the
podman system renumbercommand would fail if volumes existed when using thesqlitedatabase backend (#23052). - Fixed a bug where the
podman container restorecommand could not successfully restore a container in a pod. - Fixed a bug where an error message from
podman diffwould suggest using the--latestoption when using the remote Podman client (#23038). - Fixed a bug where user could assign more memory to a Podman machine than existed on the host (#18206).
- Fixed a bug where the
podman eventscommand was rarely unable to report errors that occurred (#23165). - Fixed a bug where containers run in systemd units would sometimes not be removed correctly on exit when using the
--cidfileoption. - Fixed a bug where the first Podman command run after a reboot could cause hang when using transient mode (#22984).
- Fixed a bug where Podman could throw errors about a database configuration mismatch if certain paths did not exist on the host.
- Fixed a bug where the
podman runandpodman startcommands could throw strange errors if another Podman process stopped the container at a midpoint in the process of starting (#23246). - Fixed a bug where the
podman system servicecommand could leak a mount on termination. - Fixed a bug where the Podman remote client would panic if an invalid image filter was passed to
podman images(#23120). - Fixed a bug where the
podman auto-updateandpodman system dfcommands could fail when a container was removed while the command was running (#23279). - Fixed a bug where the
podman machine initcommand could panic when trying to decompress an empty file when preparing the VM image (#23281). - Fixed a bug where the
podman ps --podandpodman pod statscommands could sometimes fail when a pod was removed while the command was running (#23282). - Fixed a bug where the
podman statsandpodman pod statscommands would sometimes exit with acontainer is stoppederror when showing all containers (or pod containers, forpod stats) if a container stopped while the command was running (#23334). - Fixed a bug where the output of container healthchecks was not properly logged if it did not include a final newline (#23332).
API
- The Build API for Images now accepts a comma-separated list in the Platform query parameter, allowing a single API call to built an image for multiple architectures (#22071).
- Fixed a bug where the Remove endpoint for Volumes would return an incorrectly formatted error when called with an ambiguous volume name (#22616).
- Fixed a bug where the Stats endpoint for Containers would return an incorrectly formatted error when called on a container that did not exist (#22612).
- Fixed a bug where the Start endpoint for Pods would return a 409 error code in cases where a 500 error code should have been returned (#22989).
- Fixed a bug where the Top endpoint for Pods would return a 200 status code and then subsequently an error (#22986).
Misc
- Podman no longer requires all parent directories of its root and runroot to be world-executable (#23028).
- Error messages from the
podman buildcommand when the-foption is given, but points to a file that does not exist, have been improved (#22940). - The Podman windows installer is now built using WiX 5.