Podman Commands for DevOps Engineers
📌 Introduction
Podman is a daemonless, open-source container management tool that serves as a drop-in replacement for Docker. It provides rootless execution, better security, and native support for Kubernetes.
🛠️ Installation
Ubuntu/Debian
sudo apt update && sudo apt install -y podmanCentOS/RHEL
sudo yum install -y podmanMacOS (Homebrew)
brew install podmanCheck Installation
podman --version🚀 Basic Podman Commands
1. Running Containers
podman run -d --name mynginx -p 8080:80 nginx-d→ Detached mode--name→ Assigns a name to the container-p→ Maps ports (Host:Container)
2. Listing Running Containers
podman ps3. Listing All Containers (Including Stopped)
podman ps -a4. Stopping & Removing Containers
podman stop mynginx
podman rm mynginx5. Viewing Logs of a Container
podman logs mynginx6. Executing Commands Inside a Running Container
podman exec -it mynginx bash-i→ Interactive mode-t→ Allocates a TTY
7. Inspecting Container Details
podman inspect mynginx📦 Image Management
1. Pulling Images
podman pull nginx2. Listing Available Images
podman images3. Removing Images
podman rmi nginx4. Building Custom Images
podman build -t myapp .5. Tagging Images
podman tag myapp docker.io/myrepo/myapp:v16. Pushing Images to a Registry
podman push docker.io/myrepo/myapp:v1🔒 Rootless Podman
Enable Rootless Mode
podman system migrateRun a Rootless Container
podman run --rm hello-world⚡ Podman Pods (Multi-Container Management)
1. Creating a Pod
podman pod create --name mypod -p 8080:802. Running Containers Inside a Pod
podman run -d --pod mypod --name webserver nginx3. Listing Pods
podman pod ps4. Stopping & Removing Pods
podman pod stop mypod
podman pod rm mypod🔁 Docker Compatibility
Podman supports Docker-compatible commands. To alias Podman as Docker:
alias docker=podman📜 Generating Kubernetes YAML
Convert Podman Containers to Kubernetes YAML
podman generate kube mynginx > mynginx.yamlApply the YAML to Kubernetes
kubectl apply -f mynginx.yaml🎯 Conclusion
Podman is a powerful, secure alternative to Docker, providing container management without a daemon. It integrates well with Kubernetes and is a great tool for DevOps engineers looking to optimize containerized workflows.
🚀 Happy Containerizing with Podman!