20 Podman auf Linux

20.1 Warum Linux der „natürliche Lebensraum“ von Podman ist

Podman wurde für Linux entwickelt und nutzt Kernel-Features, die dort nativ verfügbar sind: Namespaces, Cgroups, OverlayFS, Seccomp und Capabilities. Anders als Docker benötigt Podman keinen Daemon, der diese Funktionen kapselt oder simuliert. Container starten als isolierte Linux-Prozesse – ohne zusätzliche Abstraktionsebene.

Deshalb wirkt Podman unter Linux nicht wie ein Fremdkörper, sondern wie ein Werkzeug, das sich nahtlos in bestehende Systeme integriert. Alle wichtigen Mechanismen, die Container ermöglichen, stammen direkt aus dem Linux-Kernel. Podman nutzt sie so, wie sie vorgesehen sind.


20.2 Die Laufzeitumgebung: echtes Linux statt VM

Der wichtigste Unterschied zu macOS oder Windows besteht darin, dass unter Linux keine virtuelle Maschine notwendig ist. Podman läuft direkt auf dem Host, und Container arbeiten mit unmittelbarem Zugriff auf:

Diese direkte Ausführung sorgt für vorhersehbares Verhalten, hohe Performance und vollständige Kontrolle über die Laufzeitumgebung.


20.3 Installation auf Linux: distributionstypisch und schlicht

Podman ist auf nahezu allen gängigen Distributionen verfügbar. Die Installation erfolgt über die Standardpaketverwaltung.

20.3.1 Fedora, CentOS Stream, RHEL

sudo dnf install podman

20.3.2 Debian und Ubuntu

sudo apt install podman

Für besonders aktuelle Versionen lohnt sich das Kubic- oder Project Atomic-Repository.

20.3.3 Arch Linux

sudo pacman -S podman

Die Installation ist unspektakulär – ein einzelnes Paket reicht aus.


20.4 Rootful vs. Rootless unter Linux

Linux ist das einzige System, auf dem Podman vollständig rootless und ohne Workarounds ausgeführt werden kann.

20.4.1 Rootless-Betrieb

Ein rootloser Container besitzt keine gefährlichen Host-Privilegien, auch wenn er sich im Container selbst wie root verhält.

20.4.2 Rootful-Betrieb

Der rootvolle Modus ist vorzuziehen, wenn Container direkten Zugriff auf Hardware, Kernel-nahe Funktionen oder spezielle Netzwerkmodi benötigen.


20.5 Storage auf Linux: OverlayFS ohne Umwege

Unter Linux steht das native OverlayFS direkt zur Verfügung. Das Layer-Modell sieht typischerweise so aus:

Rootless-Betrieb greift automatisch auf fuse-overlayfs zurück. Die Semantik bleibt gleich, die Performance ist abhängig vom Workload. Für viele Anwendungen ist dies völlig ausreichend, bei intensiven Schreibvorgängen kann der Unterschied jedoch spürbar sein.


20.6 Netzwerke auf Linux: Netavark und CNI nativ nutzbar

Linux unterstützt sämtliche Netzwerkbackends, die Podman bereitstellt:

Beide Modi – rootless und rootful – sind ohne Einschränkungen nutzbar.

20.6.1 Beispiele für typische Einsatzmuster

Die Wahl des Backends hängt stark vom jeweiligen Einsatzszenario ab.


20.7 Systemintegration: Podman verhält sich wie ein Bestandteil des Linux-Systems

Podman integriert sich tief in die Systemmechanik:

Diese Integration führt zu einem sehr stabilen und transparenten Betriebsmodell, das ohne zusätzliche Schichten auskommt.


20.8 Podman und systemd: Steuerung über Units

Viele containerisierte Dienste sollen dauerhaft laufen, neu starten oder überwacht werden. Podman bietet einen Mechanismus, um Container in systemd-Services zu überführen:

podman generate systemd --new --files mycontainer

Dabei entstehen Unit-Dateien, die sich wie native Dienste verhalten:

Container sind damit erstklassige Bürger im Linux-Dienstesystem.


20.9 Warum Podman auf Linux das „echte“ Podman ist

Unter Linux nutzt Podman direkt die Fähigkeiten des Kernels – ohne Emulation, ohne virtuelle Maschine, ohne Umwege. Die Container laufen als normale Prozesse, die von Linux isoliert und gesteuert werden.

Dadurch entsteht:

Überall sonst muss Podman eine zusätzliche Abstraktionsebene einziehen. Unter Linux zeigt es sein volles Potenzial – so, wie es konzipiert wurde.