This guide will discuss how to install Podman on CentOS 7 / Fedora 36/35/34/33/32. Podman is a daemonless container engine for developing, managing, and running OCI Containers on your Linux System. The major difference between Docker and Podman is that there is no daemon in Podman.
For Ubuntu, check: How to install podman on Ubuntu
Podman uses container runtimes as well for example runc but the launched containers are direct descendants of the podman process. This kind of architecture has its advantages such as the following:
- Applied Cgroups or security constraints still control the container: Whatever cgroup constraints you apply on the podman command, the containers launched will receive those same constraints directly.
- Advanced features of systemd can be utilized using this model: This can be done by placing podman into a systemd unit file and hence achieving more.
The following set of tools work together to power the use of Containers without an all-time running daemon process.
- Buildah to facilitate the building of OCI images
- Skopeo for sharing/finding container images on Docker registries, the Atomic registry, private registries, local directories, and local OCI-layout directories.
- Podman for running containers without the need for a daemon.
Install Podman on CentOS 7 / Fedora 36/35/34/33/32
The podman package is available on Fedora & CentOS upstream repositories.
sudo yum -y install podman
For a newer version check out: Installing Podman 3.x on CentOS 7 / RHEL 7
sudo dnf install -y podman
To view installed package details, use rpm command.
$ rpm -qi podman Name : podman Epoch : 3 Version : 4.1.1 Release : 1.fc36 Architecture: x86_64 Install Date: Mon 11 Jul 2022 10:28:58 AM UTC Group : Unspecified Size : 40586875 License : ASL 2.0 and BSD and ISC and MIT and MPLv2.0 Signature : RSA/SHA256, Wed 15 Jun 2022 04:31:43 PM UTC, Key ID 999f7cbf38ab71f4 Source RPM : podman-4.1.1-1.fc36.src.rpm Build Date : Wed 15 Jun 2022 02:31:55 PM UTC Build Host : buildvm-x86-05.iad2.fedoraproject.org ...
After the installation, you can display information pertaining to the host, current storage stats, and build of podman.
$ podman info host: arch: amd64 buildahVersion: 1.26.1 cgroupControllers: - cpuset - cpu - io - memory - hugetlb - pids - misc cgroupManager: systemd cgroupVersion: v2 conmon: package: conmon-2.1.0-2.fc36.x86_64 path: /usr/bin/conmon version: 'conmon version 2.1.0, commit: ' cpuUtilization: idlePercent: 84.89 systemPercent: 3.82 userPercent: 11.3 cpus: 1 distribution: distribution: fedora variant: cloud version: "36" eventLogger: journald hostname: fedora.hirebestengineers.com idMappings: gidmap: null uidmap: null kernel: 5.17.5-300.fc36.x86_64 linkmode: dynamic logDriver: journald memFree: 1163808768 memTotal: 2066800640 networkBackend: netavark ociRuntime: name: crun package: crun-1.4.5-1.fc36.x86_64 path: /usr/bin/crun version: |- crun version 1.4.5 commit: c381048530aa750495cf502ddb7181f2ded5b400 spec: 1.0.0 +SYSTEMD +SELINUX +APPARMOR +CAP +SECCOMP +EBPF +CRIU +YAJL os: linux remoteSocket: path: /run/podman/podman.sock ....
Try pull alpine Linux image.
$ podman pull alpine Trying to pull registry.access.redhat.com/alpine:latest...Failed Trying to pull docker.io/alpine:latest...Getting image source signatures Copying blob sha256:e7c96db7181be991f19a9fb6975cdbbd73c65f4a2681348e63a141a2192a5f10 2.63 MB / 2.63 MB [========================================================] 0s Copying config sha256:055936d3920576da37aa9bc460d70c5f212028bda1c08c0879aedf03d7a66ea1 1.48 KB / 1.48 KB [========================================================] 0s Writing manifest to image destination Storing signatures 055936d3920576da37aa9bc460d70c5f212028bda1c08c0879aedf03d7a66ea1
Check list of downloaded images.
$ podman images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/library/alpine latest 055936d39205 5 weeks ago 5.8 MB
Using Podman on CentOS 7 / Fedora 36/35/34/33/32
Now that you have installed podman on CentOS 7 / Fedora system, the next reading is on how to use it. We have a guide for this:
- How To run Docker Containers using Podman and Libpod
- Setup Docker Container Registry with Podman & Let’s Encrypt SSL
- Publish Container Images to Docker Hub / Image registry with Podman
Podman shows a lot of promise in the future of Containerization. In fact, Red Hat did not just remove the Docker container engine from OpenShift. It also removed the Docker container engine, along with the
docker command, from Red Hat Enterprise Linux 8 entirely. Thank you for reading through.