# Podman - Containers vs. Pods
People associate running pods with Kubernetes. And when they run containers in their development runtimes, they do not even think about the role pods could play—even in a localized runtime. Most people coming from the Docker world of running single containers do not envision the concept of running pods. - Podman: Managing pods and containers in a local container runtime
Ultimate Docker to Podman Migration Guide: It’s NOT difficult
- Fortunately for us, Podman is described as a “drop-in replacement” for Docker. And it’s true.
- One huge difference, however, is that we are running in a rootless environment: we don’t need to add our user to a Podman group, or use sudo when running Podman commands. (using uid=0 is the correct thing to do here inside container for mouting folder)
- Podman on Ubuntu, for some odd reason, has no default registries included at all! An annoyance, but an easy fix.
- Enable Containers to Run After Logout: The root user is allowed to continue running processes in the background even when not logged-in. As we will be running in a rootless environment, we don’t have the same privilege by default.
- Restart Containers and Start on Boot: Systemd Unit files
Podman Kube Play Support
Currently, the supported Kubernetes kinds are:
- Pod
- Deployment
- PersistentVolumeClaim
- ConfigMap*
- Secret*
- DaemonSet
Compose
SystemD
Note: podman generate systemd
is deprecated. We recommend using Quadlet files when running Podman containers or pods under systemd.
PODs
✅ initContainers
✅ containers
✅ volumes - Only three volume types are supported by kube play, the hostPath, emptyDir, and persistentVolumeClaim volume types.
✅ hostname
✅ hostNetwork
podman pod ps
orpodman ps --pod
podman generate kube my-pod >> my-pod.yaml
- Generate the YAML for our podpodman play kube ./my-pod.yaml
- Bring up a pod from the YAML
Health Check
Management tools
- Cockpit a web-based GUI for your server, has a nice plugin for us to manage Podman
Install
see also How To Install Podman 4 on Ubuntu 22.04
podman command are closed to docker
Test that docker works
see also