„No daemon, no root, no problem“ beschreibt kein Marketingmantra, sondern den Kern eines Architekturwandels. Podman reagiert damit auf zwei grundlegende Beobachtungen: Erstens erzeugt ein privilegierter Daemon im Hintergrund eine Sicherheits- und Transparenzlücke. Zweitens lässt sich Containerbetrieb erstaunlich gut auf reine Kernelmechanismen abbilden – ganz ohne zentrale Instanz, die alles kontrolliert.
Wer diese Leitidee versteht, versteht Podman.
Container wurden ursprünglich als leichtgewichtige Prozesse gedacht. Der Docker-Daemon hat dieses Konzept erweitert, indem er als zentraler Koordinator auftrat. Er startete Container, verwaltete Netzwerke, erzeugte Storage-Layer und diente gleichzeitig als API-Endpunkt. Das Modell funktionierte gut, wurde jedoch zunehmend zum Flaschenhals: Der Daemon lief als root und wurde so zum Single Point of Failure – technisch wie sicherheitstechnisch.
Podman verzichtet bewusst auf diese zentrale Schaltstelle. Stattdessen wird für jeden Container ein Conmon-Prozess erzeugt, der ausschließlich diesen Container überwacht:

Dieser dezentrale Ansatz hat weitreichende Konsequenzen: Ein Conmon-Prozess kann abstürzen, ohne andere Conmon-Instanzen zu beeinflussen. Ein Container kann weiterlaufen, selbst wenn die CLI längst beendet wurde. Und das Betriebssystem erhält wieder die direkte Oberhoheit über Prozessstrukturen.
Ohne zentralen Daemon entfällt der Bedarf für dauerhaft privilegierte Hintergrundprozesse. Dadurch ergibt sich fast automatisch die Möglichkeit, Container im reinen Nutzerkontext zu betreiben. Podman nutzt hierfür User Namespaces, effiziente Runtimes wie crun und fuse-overlayfs.
Rootloser Containerbetrieb bedeutet:
Ein Containerprozess im User Namespace hat strikt die Rechte, die ihm zustehen – nicht mehr und nicht weniger.
Ein Großteil der Containerlogik besteht aus der Nutzung von Kerneltechniken:
Podman baut darauf auf, ohne eine eigene, privilegierte Zwischenebene zu schaffen. Docker führt durch seinen Daemon eine zweite Steuerinstanz ein, die wie ein Mini-Betriebssystem im Betriebssystem funktioniert. Podman bleibt hingegen nah an der Linux-Realität.
Die Konsequenz: Container verhalten sich wie ganz normale Prozesse, nur isolierter.
Da Podman keinen Daemon versteckt, ist die gesamte Prozessstruktur sichtbar. Container tauchen mit ihrer eigenen PID im Host auf, begleitet vom jeweiligen Conmon-Prozess. Standardwerkzeuge reichen aus, um alles zu analysieren:
pstopstracelsofipsystemd-cglsEs gibt keine Blackbox-Schichten, keine verdeckten Scheduling-Logiken, keine parallel laufende Prozesswelt, die von einem Daemon verwaltet wird. Man arbeitet direkt mit den Mechanismen des Kernels.
Der praktische Vorteil der Leitidee zeigt sich besonders auf Mehrnutzer-Systemen: Jeder Nutzer erhält seinen eigenen Containerraum – vollkommen unabhängig und ohne globale Interferenzen.
Das umfasst:
Es gibt keine globalen Daemon-Zustände, die von verschiedenen Nutzern beeinflusst werden könnten.
Dass Podman weder Daemon noch root benötigt, ist kein Verzicht, sondern die logische Konsequenz eines Designs, das auf den Kern der Containeridee zurückgeht: „Container sind isolierte Prozesse, keine eigenständigen Subsysteme.“
Der Effekt: Ein Werkzeug, das sich in das Betriebssystem einfügt, statt ein eigenes zweites Ökosystem zu errichten. Die Architektur bleibt minimalistisch, nachvollziehbar und transparent – und damit nahe an der ursprünglichen Idee von Containern.