Switch from Docker to Podman?

I’ve been a long-time Docker user, but have been hearing some buzz about Podman recently, so decided to dive in.
Some Research
Web Search
https://www.geeksforgeeks.org/podman-vs-docker/
https://betterstack.com/community/guides/scaling-docker/podman-vs-docker/
https://blog.purestorage.com/purely-educational/docker-vs-podman/
ChatGPT Search
Takeaway
The combination of Docker compatibility, improved security and improved Podman Desktop licensing has me intrigued to switch.
Podman Desktop Install
I was already using WSL and Docker and using VS Code to access. A few years back, I started using Docker Desktop, but when the license went commercial, it became a barrier for professional use, so I got rid of it on my home setup as well and worked through the docker direct with WSL route.
I installed Podman Desktop on Windows 11 and followed the standard install (see https://podman-desktop.io/docs/installation/windows-install). As part of the process, it asked to create a new WSL target, named podman-machine-default
. The current default image is Fedora 41, which makes sense since Redhat has podman built-in natively.
wsl -l -v
NAME STATE VERSION
* Ubuntu Running 2
podman-machine-default Running 2
First Impression: The Desktop installation worked without issue and the environment is intuitive.
wsl -d podman-machine-default
$ cat /etc/os-release
NAME="Fedora Linux"
VERSION="41 (Container Image)"
RELEASE_TYPE=stable
ID=fedora
VERSION_ID=41
VERSION_CODENAME=""
PLATFORM_ID="platform:f41"
PRETTY_NAME="Fedora Linux 41 (Container Image)"
ANSI_COLOR="0;38;2;60;110;180"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:41"
DEFAULT_HOSTNAME="fedora"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f41/"
SUPPORT_URL="https://ask.fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
...
Upon some additional research, it appears that I can switch between them or use them at the same time, which is useful if I’m not sure or suspect some compatibility issues with one or the other.
Start a specific distro:
wsl -d podman-machine-default
Set the default distro:
wsl --set-default <distro name>
Visual Studio Code
First, a recent VSCode update changes or renames from Docker to Container Tools. Once that was installed and I changed the Docker Path from docker
to podman
VS Code prompted and all began to work… If I had to do it again, I’d document the exact flow.
In the end, it works just like Docker. I can attach to a running container, create a workspace and have it re-launch the container on starting the workspace.
Client Performance
From https://uptrace.dev/comparisons/podman-vs-docker
Next Steps and Questions
How well does Podman desktop work when on VPN?
Client Performance comparison?
Jenkins Interface via Docker Cloud?
Jenkins Agent performance?
Conclusion
I am seriously considering it, but need to do some trials first. The fact that I should be able to set this up and run independent of Docker gives a path forward for derisking before making an official decision.
Subscribe to my newsletter
Read articles from Eric Zimmerman directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Eric Zimmerman
Eric Zimmerman
As a seasoned software engineering professional with over two decades of experience, I specialize in leading and architecting complex software projects.