Als ich das erste Mal über Podman gestolpert bin, war ich skeptisch: Noch ein Container-Tool? Docker hatte ich doch gerade erst halbwegs im Griff. Was mich dann aber gepackt hat, war die Idee dahinter: Podman läuft ohne Daemon und erlaubt mir, Container rootless zu betreiben. Genau das hat bei mir den Schalter umgelegt.
In diesem Beitrag zeige ich meinen Podman Einstieg und die wichtigsten Podman Befehle, die ich im Alltag wirklich nutze – mit Beispielen, die ich selbst genauso auf der Shell eingetippt habe.
Warum ich mich mit Podman beschäftigt habe
Ich wollte Container starten, testen, wieder wegwerfen – aber ohne das Gefühl, immer gleich tief ins System einzugreifen. Podman hat sich da schnell wie ein guter Kompromiss angefühlt: vertraute CLI, moderne Konzepte, sauberer Workflow. Und weil ich beim Lernen am besten über konkrete Schritte komme, habe ich mir eine kleine Grundausstattung an Podman Befehlen aufgebaut, die ich heute fast automatisch nutze.
Die wichtigsten Podman Befehle für den Einstieg
1) Podman Hilfe: Orientierung auf der Kommandozeile
Bevor ich irgendwas auswendig gelernt habe, habe ich mir erstmal Podman selbst erklären lassen. Klingt simpel – war aber extrem hilfreich.
podman --helpWenn ich tiefer gehen will, mache ich das oft direkt für einen Unterbefehl:
podman run --help2) Podman Images suchen, herunterladen und anzeigen
podman search: Images finden
Wenn ich ein neues Setup teste, suche ich zuerst nach einem passenden Image. Zum Beispiel für Nginx:
podman search nginxDas hilft mir, nicht blind irgendwas zu nehmen, sondern zu sehen, welche Varianten es gibt.
podman pull: Image herunterladen
Wenn ich mich entschieden habe, ziehe ich das Image lokal:
podman pull docker.io/library/nginx:latestpodman images: lokale Images anzeigen
Und dann schaue ich kurz, ob alles da ist:
podman images3) Podman Container starten und verwalten
podman run: Container starten (mein Standard-Beispiel)
Der Moment, in dem Podman bei mir „geklickt“ hat, war ein einfacher Nginx-Start:
podman run --name mein-nginx -d -p 8080:80 nginxKurz was ich mir dazu gemerkt habe:
--name mein-nginxmacht den Container später leichter ansprechbar-dläuft im Hintergrund (praktisch fürs Testen)-p 8080:80mappt den Container-Port auf den Host
Danach war der Test für mich ganz banal: Browser auf, http://localhost:8080 öffnen – und wenn die Seite kommt, war mein Podman Einstieg erfolgreich.
podman ps: laufende Container anzeigen
Wenn ich wissen will, was gerade läuft:
podman pspodman ps -a: alle Container anzeigen
Beim Experimentieren bleiben Container gerne mal liegen. Für die komplette Liste:
podman ps -apodman stop: Container stoppen
Wenn ich fertig bin oder kurz etwas ändern will:
podman stop mein-nginxpodman rm: Container löschen
Und wenn ich wirklich aufräume:
podman rm mein-nginxMein Learning: Regelmäßig löschen spart mir später Chaos.
4) Arbeiten im Container: Logs, Shell, Debugging
podman logs: Logs anzeigen
Wenn etwas nicht funktioniert, schaue ich zuerst in die Logs – fast immer.
podman logs mein-nginxBei Bedarf auch „live“ mit Follow:
podman logs -f mein-nginxpodman exec: in den laufenden Container wechseln
Für Debugging oder einfach zum Reinschauen gehe ich direkt in den Container:
podman exec -it mein-nginx /bin/bashFalls das Image kein Bash mitbringt, nehme ich oft:
podman exec -it mein-nginx /bin/sh5) Images mit Podman taggen und pushen
podman tag: Images sauber benennen
Wenn ich Images sinnvoll benennen oder versionieren will, nutze ich Tags:
podman tag nginx mein-nginx:latestpodman push: Image in ein Registry pushen
Wenn ich das Image teilen oder in einer Pipeline nutzen will:
podman push mein-nginx:latest docker.io/meinbenutzer/mein-nginx:latestDas war für mich ein kleiner Meilenstein: Ab hier fühlt sich Podman nicht mehr nach „Testen“, sondern nach „Workflow“ an.
Mein Fazit: Podman Befehle, die bei mir hängen geblieben sind
Wenn ich heute auf meinen Start zurückblicke, waren es nicht hundert Features, die mich überzeugt haben, sondern die Basics: Podman Befehle, die ich schnell verstanden und direkt anwenden konnte.
- Images:
podman search,podman pull,podman images - Container:
podman run,podman ps,podman stop,podman rm - Debugging:
podman logs,podman exec - Weitergabe:
podman tag,podman push
Für mich ist Podman heute eine sehr angenehme Alternative, gerade wenn ich Container schnell und sauber testen will oder rootless arbeiten möchte. Und mein Weg geht weiter: Als nächstes will ich mich intensiver mit Pods, Netzwerken und systemd-Units für Podman beschäftigen.
Wenn du gerade selbst beim Podman Einstieg bist: Probier die Befehle aus, spiel damit herum, und vor allem – räum zwischendurch auf. Das macht den Kopf frei und das System auch. 🙂