# Podman: what changed from 5 to 6 - Product: Podman (https://whatsnew.fyi/product/podman) - Vendor: Red Hat - Range: changelog entries numbered after v5.8.6 up to and including v6.1.1, stable releases only - Entries below: 5 releases (newest first) - Resolved: 5 is v5.8.6 and 6 is v6.1.1, the newest stable release of each major we track - Carrying security changes: 2 · CVEs mentioned: 3 · Mentioning breaking changes: 1 · Removing or deprecating something: 1 - Page: https://whatsnew.fyi/product/podman/compare/5...6 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## What changed (59 changes, grouped by kind) ### Added #### v6.1.0 (2026-08-12) - Add podman volume rename command to allow renaming volumes - Add podman machine restart command to allow easy restart of VMs managed by podman machine - Add --ignore option to podman network rm command to suppress errors when removing non-existent networks - Add --retry and --retry-delay options to podman manifest push command to automatically retry pushes on failure - Add ImageVolume= key support to Quadlet .container units to configure how volumes from images are handled - Add support for generating container healthchecks as a livenessProbe in podman generate kube command - Add force_port_listen option to containers.conf for WSL port forwarding support #### v6.0.0 (2026-06-24) - A new command podman machine os update has been added to update the operating system of a podman machine VM - A new command podman system hyperv-prep has been added to allow Windows administrators to prepare a host for podman machine VMs using the hyperv provider ### Changed #### v6.1.0 (2026-08-12) - podman info command now includes free memory available on the host - Pesto rootless port forwarding tool now supports IPv6 port forwarding with source IP preservation #### v6.0.2 (2026-07-22) - Updated Buildah to v1.44.1 #### v6.0.0 (2026-06-24) - Podman's configuration file parsing logic has been rewritten - Podman's import path has changed from github.com/containers/podman/v5 to go.podman.io/podman/v6 - Network isolation now defaults to enabled, improving Docker compatibility and security - The way the podman quadlet suite of commands functions has been changed to place Quadlets and associated files in subdirectories instead of tracking with a .app file - VMs made by podman machine on Linux now mount volumes from the host using systemd, requiring recreation of existing VMs - The podman volume prune command now matches Docker's behavior by only pruning unused anonymous volumes - The podman volume list command now combines multiple filters using logical AND instead of logical OR - The label!= filter now combines multiple instances with logical AND instead of logical OR - The --format='{{json .Labels}}' option to podman ps, podman pod ps, and podman volume ls now prints output as comma-separated key=value pairs instead of a JSON map - The MemorySwappiness field of podman inspect is now set to nil when not explicitly set by the user instead of -1 - The podman commit command now pauses the container while committing changes; prior behavior can be restored with podman commit --pause=false ### Fixed #### v6.1.1 (2026-09-02) - Fix broken rootlessport bind behavior with `-p 0.0.0.0:... -p [::]:...` which failed instead of binding both v4 and v6 separately by binding separate IPv4 and IPv6 sockets to make the WSL forwarder logic work again #### v6.1.0 (2026-08-12) - Fix remote Podman client hanging on some operations when connecting over SSH - Fix podman image scp command inability to work with usernames containing @ character - Fix podman kube play command not properly validating hostPort bindings allowing duplicated host ports - Fix podman machine VMs on Windows with hyperv provider sometimes failing to start due to race condition in volume mount setup - Fix podman machine VMs on Mac being left in inconsistent state if podman machine start command was interrupted by signal - Fix podman machine on Mac returning nonsensical error when binding to port number below 1024 with clear error message - Fix podman quadlet list and podman quadlet rm commands not functioning properly with uninstantiated template Quadlets - Fix podman quadlet install command occasionally failing if non-quadlet files were specified - Fix podman quadlet install command not refusing to install Quadlets including non-quadlet files without --application option - Fix healthcheck logs corruption preventing proper healthcheck operation when healthcheck was killed midway through writing - Fix podman volume prune --all command incorrectly discarding label filters #### v6.0.2 (2026-07-22) - Fixed a bug where podman machine VMs created by the WSL provider on Windows were not properly cleaned up if the podman machine init command failed - Fixed a bug where the Windows installer for Podman would, when installing for all users, incorrectly modify the path of only the user installing Podman - Fixed a bug where the remote Podman client would throw errors when run on a Linux system that was not using Cgroups v2 #### v6.0.1 (2026-07-08) - Podman Machine VMs on Mac using the libkrun provider could be regularly turned off by a port-scanning process on the host unintentionally commanding the VM to shut down - The podman machine init command would fail on Windows hosts when using the hyperv provider when WSL was not installed - The podman machine init command would fail on Windows hosts when using the wsl provider when the user was a Hyper-V admin but Hyper-V is disabled - Error messages from the OCI runtime were sometimes not displayed when --log-level=debug was passed to Podman - The podman machine os upgrade command did not function properly - The default image used by podman machine was not being properly cached - Rootful Podman Machine VMs on Windows using the wsl provider would fail to start - Commands that did not support the --replace option would incorrectly suggest using that option in error messages - The Pesto rootless port forwarding tool enabled by rootless_port_forwarder=pasta did not properly clean up rules on container restart and network reload, causing failures to forward traffic ### Removed #### v6.0.0 (2026-06-24) - Support for BoltDB databases has been dropped; Podman 6 will attempt automatic migration from BoltDB to SQLite - Support for running on Intel Macs has been removed - Support for running on Windows 10 has been removed - Support for running on cgroups v1 systems has been removed - Support for running on iptables has been removed; use nftables instead - Support for CNI networking has been removed; use Netavark instead - Support for the slirp4netns rootless network stack has been removed; use Pasta instead - The --network-cmd-path global option has been removed - The --all-providers option to podman machine list has been removed ### Security #### v6.1.1 (2026-09-02) - Address CVE-2026-17106 where a crafted tar archive could write outside the extraction directory through the use of malicious links #### v6.0.0 (2026-06-24) - Address CVE-2026-57231 where a malicious image using malformed Env entries could cause host environment variables to leak into containers, including the ability to use the * glob operator to leak large numbers of environment variables - Address CVE-2026-19730 where the podman quadlet install --replace command did not truncate the file being replaced, resulting in content from the original file being incorrectly retained ## Release notes ### v6.1.1 - Date: 2026-09-02 - Version: v6.1.1 - Original notes: https://github.com/podman-container-tools/podman/releases/tag/v6.1.1 - Permalink: https://whatsnew.fyi/product/podman/releases/v6.1.1 - **security** — Address CVE-2026-17106 where a crafted tar archive could write outside the extraction directory through the use of malicious links - **fixed** — Fix broken rootlessport bind behavior with `-p 0.0.0.0:... -p [::]:...` which failed instead of binding both v4 and v6 separately by binding separate IPv4 and IPv6 sockets to make the WSL forwarder logic work again ###### Security - This release addresses CVE-2026-17106, where a crafted tar archive could write outside the extraction directory through the use of malicious links ([GHSA-hfg8-hc9c-6c3h](https://github.com/moby/go-archive/security/advisories/GHSA-hfg8-hc9c-6c3h)). ###### Bugfixes - Fixed broken rootlessport bind behavior with `-p 0.0.0.0:... -p [::]:...` which failed instead of binding both v4 and v6 separately. Podman Machine on WSL should now correctly forward ports again by binding separate IPv4 and IPv6 sockets to make the WSL forwarder logic work again ([#29377](https://github.com/podman-container-tools/podman/issues/29377)). ### v6.1.0 - Date: 2026-08-12 - Version: v6.1.0 - Original notes: https://github.com/podman-container-tools/podman/releases/tag/v6.1.0 - Permalink: https://whatsnew.fyi/product/podman/releases/v6.1.0 - **added** — Add podman volume rename command to allow renaming volumes - **added** — Add podman machine restart command to allow easy restart of VMs managed by podman machine - **added** — Add --ignore option to podman network rm command to suppress errors when removing non-existent networks - **added** — Add --retry and --retry-delay options to podman manifest push command to automatically retry pushes on failure - **added** — Add ImageVolume= key support to Quadlet .container units to configure how volumes from images are handled - **added** — Add support for generating container healthchecks as a livenessProbe in podman generate kube command - **added** — Add force_port_listen option to containers.conf for WSL port forwarding support - **changed** — podman info command now includes free memory available on the host - **changed** — Pesto rootless port forwarding tool now supports IPv6 port forwarding with source IP preservation - **fixed** — Fix remote Podman client hanging on some operations when connecting over SSH - **fixed** — Fix podman image scp command inability to work with usernames containing @ character - **fixed** — Fix podman kube play command not properly validating hostPort bindings allowing duplicated host ports - **fixed** — Fix podman machine VMs on Windows with hyperv provider sometimes failing to start due to race condition in volume mount setup - **fixed** — Fix podman machine VMs on Mac being left in inconsistent state if podman machine start command was interrupted by signal - **fixed** — Fix podman machine on Mac returning nonsensical error when binding to port number below 1024 with clear error message - **fixed** — Fix podman quadlet list and podman quadlet rm commands not functioning properly with uninstantiated template Quadlets - **fixed** — Fix podman quadlet install command occasionally failing if non-quadlet files were specified - **fixed** — Fix podman quadlet install command not refusing to install Quadlets including non-quadlet files without --application option - **fixed** — Fix healthcheck logs corruption preventing proper healthcheck operation when healthcheck was killed midway through writing - **fixed** — Fix podman volume prune --all command incorrectly discarding label filters ###### Features - A new command has been added, `podman volume rename`, to allow renaming volumes. Volumes created using volume drivers and volumes that are currently used by a container cannot be renamed ([#28189](https://github.com/podman-container-tools/podman/issues/28189)). - A new command has been added, `podman machine restart`, to allow easy restart of VMs managed by `podman machine` ([#28366](https://github.com/podman-container-tools/podman/issues/28366)). - The `podman network rm` command now includes a new option, `--ignore`, which suppresses errors when attempting to remove networks that do not exist ([#28363](https://github.com/podman-container-tools/podman/issues/28363)). - The `podman manifest push` command now includes two new options, `--retry` and `--retry-delay`, which allow pushes to be automatically retried on failure ([#28590](https://github.com/podman-container-tools/podman/issues/28590)). - Quadlet `.container` units now support a new key, `ImageVolume=`, to configure how volumes from images are handled ([#28875](https://github.com/podman-container-tools/podman/issues/28875)). - The `podman generate kube` command now includes support for generating container healthchecks as a `livenessProbe` ([#22095](https://github.com/podman-container-tools/podman/issues/22095)). - A new option, `force_port_listen`, has been added to `containers.conf`. This is required to be set when running Podman on WSL to support port forwarding from the Windows host. It is automatically set on newly-created `podman machine` VMs on Windows using the WSL provider. ###### Changes - The `podman info` command now includes free memory available on the host (in addition to used memory and total memory) ([#29116](https://github.com/podman-container-tools/podman/issues/29116)). - The Pesto rootless port forwarding tool now supports IPv6 port forwarding with source IP preservation. ###### Bugfixes - Fixed a bug where the remote Podman client could hang on some operations when connecting to a remote Podman service over SSH ([#28453](https://github.com/podman-container-tools/podman/issues/28453)). - Fixed a bug where the `podman image scp` command could not be used with usernames containing an `@` character ([#27655](https://github.com/podman-container-tools/podman/issues/27655)). - Fixed a bug where the `podman kube play` command did not properly validate requested `hostPort` bindings, allowing the creation of containers with duplicated host ports which would never be able to start at the same time ([#26622](https://github.com/podman-container-tools/podman/issues/26622)). - Fixed a bug where `podman machine` VMs on Windows created using the `hyperv` provider would sometimes not properly start due to a race conditioning setting up volume mounts. - Fixed a bug where `podman machine` VMs on Mac where machines could be left in an inconsistent state if the `podman machine start` command was interrupted by a signal. - Fixed a bug where creating a container on a `podman machine` VM on Mac that attempted to bind to a port number number 1024 would return a nonsensical error message; a clear error explaining that privileged ports cannot be bound is now returned. - Fixed a bug where the `podman quadlet list` and `podman quadlet rm` commands did not function properly with uninstantiated template Quadlets. - Fixed a bug where the `podman quadlet install` command would occasionally fail to install a Quadlet if non-quadlet files were specified. - Fixed a bug where the `podman quadlet install` command would not refuse to install Quadlets including non-quadlet files if the `--application` option was not specified. - Fixed a bug where healthcheck logs could be corrupted, preventing proper healthcheck operation, if a healthcheck was killed midway through writing the file. - Fixed a bug where the `podman volume prune --all` command incorrectly discarded label filters, causing `podman volume prune --all --filter label=foo` to prune all volumes, not just those _[Truncated at 4000 characters — full notes: https://github.com/podman-container-tools/podman/releases/tag/v6.1.0]_ ### v6.0.2 - Date: 2026-07-22 - Version: v6.0.2 - Original notes: https://github.com/podman-container-tools/podman/releases/tag/v6.0.2 - Permalink: https://whatsnew.fyi/product/podman/releases/v6.0.2 - **fixed** — Fixed a bug where podman machine VMs created by the WSL provider on Windows were not properly cleaned up if the podman machine init command failed - **fixed** — Fixed a bug where the Windows installer for Podman would, when installing for all users, incorrectly modify the path of only the user installing Podman - **fixed** — Fixed a bug where the remote Podman client would throw errors when run on a Linux system that was not using Cgroups v2 - **changed** — Updated Buildah to v1.44.1 ###### Bugfixes - Fixed a bug where `podman machine` VMs created by the WSL provider on Windows were not properly cleaned up if the `podman machine init` command failed ([#27036](https://github.com/podman-container-tools/podman/issues/27036)). - Fixed a bug where the Windows installer for Podman would, when installing for all users, incorrectly modify the path of only the user installing Podman ([#29160](https://github.com/podman-container-tools/podman/issues/29160)). - Fixed a bug where the remote Podman client would throw errors when run on a Linux system that was not using Cgroups v2 ([#29241](https://github.com/podman-container-tools/podman/issues/29241)). ###### Misc - Updated Buildah to v1.44.1 ### v6.0.1 - Date: 2026-07-08 - Version: v6.0.1 - Original notes: https://github.com/podman-container-tools/podman/releases/tag/v6.0.1 - Permalink: https://whatsnew.fyi/product/podman/releases/v6.0.1 - **fixed** — Podman Machine VMs on Mac using the libkrun provider could be regularly turned off by a port-scanning process on the host unintentionally commanding the VM to shut down - **fixed** — The podman machine init command would fail on Windows hosts when using the hyperv provider when WSL was not installed - **fixed** — The podman machine init command would fail on Windows hosts when using the wsl provider when the user was a Hyper-V admin but Hyper-V is disabled - **fixed** — Error messages from the OCI runtime were sometimes not displayed when --log-level=debug was passed to Podman - **fixed** — The podman machine os upgrade command did not function properly - **fixed** — The default image used by podman machine was not being properly cached - **fixed** — Rootful Podman Machine VMs on Windows using the wsl provider would fail to start - **fixed** — Commands that did not support the --replace option would incorrectly suggest using that option in error messages - **fixed** — The Pesto rootless port forwarding tool enabled by rootless_port_forwarder=pasta did not properly clean up rules on container restart and network reload, causing failures to forward traffic ###### Bugfixes - Fixed a bug where Podman Machine VMs on Mac using the `libkrun` provider could be regularly turned off by a port-scanning process on the host unintentionally commanding the VM to shut down. - Fixed a bug where the `podman machine init` command would fail on Windows hosts when using the `hyperv` provider when WSL was not installed ([#29053](https://github.com/podman-container-tools/podman/issues/29053)). - Fixed a bug where the `podman machine init` command would fail on Windows hosts when using the `wsl` provider when the user was a Hyper-V admin but Hyper-V is disabled ([#29138](https://github.com/podman-container-tools/podman/issues/29138)). - Fixed a bug where error messages from the OCI runtime were sometimes not displayed when `--log-level=debug` was passed to Podman. - Fixed a bug where the `podman machine os upgrade` command did not function properly ([#29085](https://github.com/podman-container-tools/podman/issues/29085)). - Fixed a bug where the default image used by `podman machine` was not being properly cached ([#29090](https://github.com/podman-container-tools/podman/issues/29090)). - Fixed a bug where rootful Podman Machine VMs on Windows using the `wsl` provider would fail to start ([#29003](https://github.com/podman-container-tools/podman/issues/29003)). - Fixed a bug where commands that did not support the `--replace` option would incorrectly suggest using that option in error messages ([#24537](https://github.com/podman-container-tools/podman/issues/24537)). - Fixed a bug where the Pesto rootless port forwarding tool (enabled by `rootless_port_forwarder=pasta`) did not properly clean up rules on container restart and network reload, causing failures to forward traffic ([#29032](https://github.com/podman-container-tools/podman/issues/29032)). ### v6.0.0 - Date: 2026-06-24 - Version: v6.0.0 - Original notes: https://github.com/podman-container-tools/podman/releases/tag/v6.0.0 - Permalink: https://whatsnew.fyi/product/podman/releases/v6.0.0 - **security** — Address CVE-2026-57231 where a malicious image using malformed Env entries could cause host environment variables to leak into containers, including the ability to use the * glob operator to leak large numbers of environment variables - **security** — Address CVE-2026-19730 where the podman quadlet install --replace command did not truncate the file being replaced, resulting in content from the original file being incorrectly retained - **removed** — Support for BoltDB databases has been dropped; Podman 6 will attempt automatic migration from BoltDB to SQLite - **removed** — Support for running on Intel Macs has been removed - **removed** — Support for running on Windows 10 has been removed - **removed** — Support for running on cgroups v1 systems has been removed - **removed** — Support for running on iptables has been removed; use nftables instead - **removed** — Support for CNI networking has been removed; use Netavark instead - **removed** — Support for the slirp4netns rootless network stack has been removed; use Pasta instead - **removed** — The --network-cmd-path global option has been removed - **changed** — Podman's configuration file parsing logic has been rewritten - **changed** — Podman's import path has changed from github.com/containers/podman/v5 to go.podman.io/podman/v6 - **changed** — Network isolation now defaults to enabled, improving Docker compatibility and security - **changed** — The way the podman quadlet suite of commands functions has been changed to place Quadlets and associated files in subdirectories instead of tracking with a .app file - **changed** — VMs made by podman machine on Linux now mount volumes from the host using systemd, requiring recreation of existing VMs - **changed** — The podman volume prune command now matches Docker's behavior by only pruning unused anonymous volumes - **changed** — The podman volume list command now combines multiple filters using logical AND instead of logical OR - **changed** — The label!= filter now combines multiple instances with logical AND instead of logical OR - **changed** — The --format='{{json .Labels}}' option to podman ps, podman pod ps, and podman volume ls now prints output as comma-separated key=value pairs instead of a JSON map - **removed** — The --all-providers option to podman machine list has been removed - **changed** — The MemorySwappiness field of podman inspect is now set to nil when not explicitly set by the user instead of -1 - **changed** — The podman commit command now pauses the container while committing changes; prior behavior can be restored with podman commit --pause=false - **added** — A new command podman machine os update has been added to update the operating system of a podman machine VM - **added** — A new command podman system hyperv-prep has been added to allow Windows administrators to prepare a host for podman machine VMs using the hyperv provider ###### Security - This release addresses CVE-2026-57231, where a malicious image using malformed `Env` entries could cause host environment variables to leak into containers run based on the image, including the ability to use the `*` glob operator to leak large numbers of environment variables without knowing their exact names ([GHSA-4hq8-gpf5-8p68](https://github.com/podman-container-tools/podman/security/advisories/GHSA-4hq8-gpf5-8p68)). - This release addresses [CVE-2026-19730](https://github.com/podman-container-tools/podman/security/advisories/GHSA-fx76-2j3w-2mx6) where the `podman quadlet install --replace` command did not truncate the file being replaced, meaning replacing a longer file with a shorter one would result in content from the original file incorrectly being retained. ###### Breaking Changes - Due to breaking changes in this release, Podman v6.0.0 must be used with Buildah v1.44.0, Skopeo v1.23, Netavark and Aardvark v2.0.0, and configuration files from the container-libs repository's common/v0.68.0 release. - Support for BoltDB databases has been dropped. Starting Podman 6 when the BoltDB database is in use will have Podman attempt an automatic migration from BoltDB to SQLite. - Support for running on Intel Macs has been removed. - Support for running on Windows 10 has been removed. - Support for running on cgroups v1 systems has been removed. Please update your system to use cgroups v2. - Support for running on iptables has been removed. Please use nftables instead. - Support for CNI networking has been removed. Please use Netavark instead. - Support for the slirp4netns rootless network stack has been removed. Please use Pasta instead. As part of this, the `--network-cmd-path` global option, only used with `slirp4netns`, has been removed. - Podman's configuration file parsing logic has seen a major rewrite. Please see [this document](https://github.com/podman-container-tools/podman/blob/main/contrib/design-docs/config-file-parsing.md) for exact details. - Podman's import path has changed from `github.com/containers/podman/v5` to `go.podman.io/podman/v6` as part of our move into a CNCF-owned GitHub organization. - Network isolation now defaults to enabled, improving Docker compatibility and security. A special workaround for the Docker-compatible API related to isolation being disabled has been removed ([#27349](https://github.com/podman-container-tools/podman/issues/27349)). - The way the `podman quadlet` suite of commands functions has been changed. Previously, Quadlets and their associated files were tracked using a `.app` file, ensuring that removing a Quadlet also removed all associated non-Quadlet files. Now, Quadlets and associated files are placed in subdirectories, which should reduce bugs and make manual management of Quadlets added by `podman quadlet install` much easier. - VMs made by `podman machine` on Linux now mount volumes from the host using systemd. Volume mounts on existing `podman machine` VMs on Linux have been broken by this change, and the VM will need to be recreated. - The `podman volume prune` command now matches Docker's behavior by only pruning unused anonymous volumes. Please use the newly-added `--all` option for the previous behavior (pruning all volumes). - The `podman volume list` command now combines multiple filters using logical `AND` instead of logical `OR` (meaning all filters must match for a container to be included in output) ([#26786](https://github.com/podman-container-tools/podman/issues/26786)). - The `label!=` filter used in many commands now combines the output of multiple instances of the filter with logical `AND` instead of logical `OR`. - The `--format='{{json .Labels}}` option to the `podman ps`, `podman pod ps`, and `podman volume ls` commands now prints its output as comma-separated `key=value` pairs instead of as a JSON map, improving Docker compatibility ([#21847](https://github.com/podman-container-tools/podman/issues/21847)). - _[Truncated at 4000 characters — full notes: https://github.com/podman-container-tools/podman/releases/tag/v6.0.0]_