Grundlegende Kommandos zur Erstellung, Ausführung, Steuerung und Terminierung von Containern in Podman.
podman run [OPTIONEN] IMAGE [COMMAND] [ARGS...]
podman create [OPTIONEN] IMAGE [COMMAND] [ARGS...]
podman start [OPTIONEN] CONTAINER
podman stop [OPTIONEN] CONTAINER
podman kill [OPTIONEN] CONTAINER
podman restart [OPTIONEN] CONTAINER
podman pause CONTAINER
podman unpause CONTAINER
--name <name>: Containername--rm: nach Beendigung entfernen-d: im Hintergrund ausführen-p <host:ctr>: Ports publizieren-v <src:dst>: Volume Mount--env <key=value>: Umgebungsvariable--user <uid|user>: Benutzer setzenrun, jedoch ohne Start--attach, -a: an Ausgaben anhängen--interactive, -i: STDIN offen halten--timeout, -t <sek>: Wartezeit vor SIGKILL--signal, -s <signal>: zu sendendes Signalpodman run -d nginx
podman create --name db postgres
podman start db podman stop web
podman kill -s SIGTERM api
podman restart worker podman pause backup
podman unpause backup
run: Fehler bei nicht vorhandenem Image; ungültige
Port- oder Volumeangabencreate: Container wird nicht ausgeführt; Startfehler
erst beim start sichtbarstart: fehlerhafte EntryPoints oder fehlende Dateien
führen zu Exit-Code <> 0stop: Prozesse beenden nicht rechtzeitig → SIGKILL nach
Timeoutkill: falsches oder nicht unterstütztes Signal führt zu
sofortigem Abbruchrestart: persistiert vorherige Fehler; Crashloops
möglichpause: einige Prozesse/Daemons reagieren nicht auf
Freezing (z. B. Zeitouts)unpause: Container kann nach Ressourcenengpässen nicht
korrekt fortsetzenVerwaltung, Übertragung, Markierung, Speicherung, Wiederherstellung und Erstellung von Container-Images in Podman.
podman pull [OPTIONEN] NAME[:TAG]
podman push [OPTIONEN] NAME[:TAG] [DESTINATION]
podman tag SOURCE_IMAGE TARGET_IMAGE
podman untag IMAGE [IMAGE...]
podman save [OPTIONEN] -o DATEI IMAGE
podman load [OPTIONEN] -i DATEI
podman export [OPTIONEN] -o DATEI CONTAINER
podman import [OPTIONEN] DATEI [NAME[:TAG]]
podman rmi [OPTIONEN] IMAGE
podman build [OPTIONEN] PATH|URL|FILE
--authfile <pfad>: Authentifizierungsdatei--tls-verify=<bool>: TLS-Überprüfung--quiet, -q: reduzierte Ausgabe--authfile <pfad>--tls-verify=<bool>--digestfile <pfad>: Digest speichern-o, --output <datei>: Ausgabe--format <oci|docker>-i, --input <datei>: Eingabe-o, --output <datei>: Dateiausgabe--compress: komprimierte Ausgabe--change <instr>: Konfigurationsänderungen--message <text>: Beschreibung--force, -f: Entfernen erzwingen-t, --tag <name>: Tag setzen-f, --file <pfad>: Dockerfile/Containerfile--build-arg <key=val>: Build-Argumente--no-cache: ohne Cache bauen--pull-always: Basisimage immer neu ziehenpodman pull alpine:latest
podman push app:1.0 registry.local/app:1.0
podman tag api:latest api:v2
podman untag api:v2
podman save -o image.tar api:1.0
podman load -i image.tar
podman export -o rootfs.tar ctr1
podman import rootfs.tar newimg:latest
podman rmi oldimg:latest
podman build -t demo .
pull: TLS-Fehler, Authentifizierungsprobleme, fehlende
Tagspush: Schreibrechte in Registry unzureichend,
Digest-Konfliktetag/untag: rein lokal; verwechselt mit tatsächlichem
Kopierensave/load: nur Images; keine Container-Metadatenexport/import: exportiert Container-Dateisystem ohne
Historyrmi: schlägt fehl, wenn Container Image noch
nutzenbuild: Build-Kontext falsch; fehlende Dateien;
Syntaxfehler im ContainerfileErstellen, Abfragen und Entfernen benutzerdefinierter Podman-Netzwerke.
podman network create [OPTIONEN] NAME
podman network inspect NAME
podman network rm NAME
--subnet <CIDR>: IPv4-Subnetz--gateway <IP>: Gateway-Adresse--ip-range <CIDR>: adressierbarer Bereich--driver <typ>: Netzwerktreiber
(bridge, macvlan usw.)--disable-dns: deaktiviert internen DNS--internal: isoliertes Netzwerk ohne externes
Routing--label <key=value>: Metadaten setzenpodman network create testnet
podman network inspect testnet
podman network rm testnet
create: Subnetze dürfen nicht mit Host-/VPN-Netzen
kollidierencreate: Gateway muss innerhalb des Subnetzes
liegencreate: fehlender Treiber → Standard:
bridgeinspect: zeigt nur existierende Netzwerke; Fehler bei
falschem Namenrm: schlägt fehl, wenn Container das Netzwerk noch
verwendenErstellen, Abfragen und Entfernen benutzerdefinierter Podman-Volumes.
podman volume create [OPTIONEN] [NAME]
podman volume inspect NAME
podman volume rm NAME
--label <key=value>: Metadaten hinzufügen--opt <key=value>: Volume-spezifische
Optionen--driver <name>: Volumetreiber auswählen
(Standard: local)--force, -f: Löschen erzwingenpodman volume create data
podman volume inspect data
podman volume rm data
create: fehlerhafte Treiber-Optionen verhindern
Erstellunginspect: schlägt fehl bei nicht existierenden
Volumesrm: nicht möglich, wenn Volumes von Containern genutzt
werden; --force nötigErstellen, Auflisten, Starten, Stoppen, Entfernen und Abfragen von Podman-Pods.
podman pod create [OPTIONEN]
podman pod ps [OPTIONEN]
podman pod start [OPTIONEN] POD
podman pod stop [OPTIONEN] POD
podman pod rm [OPTIONEN] POD
podman pod inspect POD
--name <name>: Podname--share <ns>: gemeinsame Namespaces
(cgroup, uts, ipc,
net)--infra=<bool>: Infra-Container
aktivieren/deaktivieren--infra-command <cmd>: Kommando des
Infra-Containers--label <key=value>: Metadaten--hostname <name>: Hostname im Pod--all, -a: alle Pods--quiet, -q: nur IDs--no-trunc: vollständige Ausgabe--format <string>: benutzerdefiniertes
Format--all: alle Pods starten--timeout, -t <sek>: Wartezeit vor forcierter
Terminierung--all: alle Pods stoppen--force, -f: laufende Pods erzwingen--all: alle Pods entfernenpodman pod create --name webpod
podman pod ps podman pod start webpod
podman pod stop webpod podman pod rm webpod
podman pod inspect webpod
create: falsche Namespace-Sharing-Angaben verursachen
Konflikteps: zeigt nur aktive Pods ohne --allstart: schlägt fehl, wenn Infra-Container beschädigt
iststop: lange Laufzeiten bei Prozessen, die SIGTERM
ignorierenrm: nicht möglich, wenn abhängige Container noch
laufen; --force erforderlichinspect: nur gültig für existierende PodsAbfragen, Bereinigen, Zurücksetzen und Migrieren systemweiter Podman-Storage- und Konfigurationsdaten.
podman system df
podman system prune [OPTIONEN]
podman system reset [OPTIONEN]
podman system migrate
--all, -a: alle ungenutzten Objekte entfernen--force, -f: ohne Rückfrage--volumes: ungenutzte Volumes entfernen--force, -f: ohne Bestätigungpodman system df podman system prune -a -f
podman system reset -f
podman system migrate
df: zeigt nur lokale Podman-Storage-Datenprune: laufende Container verhindern Entfernen
bestimmter Objekteprune: Entfernen von Volumes führt zu Datenverlustreset: löscht alle Container, Images, Netzwerke,
Volumesreset: erfordert Schreibrechte auf Storage-Pfadmigrate: kann fehlschlagen bei beschädigten
Storage-Layern; Backup empfohlenErzeugen und Ausführen von Kubernetes-YAML-Spezifikationen aus Podman-Containern, Pods oder Volumes.
podman generate kube [OPTIONEN] CONTAINER|POD|VOLUME...
podman play kube [OPTIONEN] DATEI
--filename, -f <pfad>: Ausgabe in Datei statt
STDOUT--service, -s: zusätzlich Kubernetes-Service
erzeugen--network <name>: Netzwerkzuordnung
überschreiben--replace: bestehende Pod-Konfiguration ersetzen--start: Pod nach Erstellung starten (Standard)--no-start: Pod erstellen, jedoch nicht starten--quiet, -q: reduzierte Ausgabe--annotation <key=value>: zusätzliche
Annotationen setzen--log-driver <driver>: Log-Treiber festlegen--seccomp-profile-root <pfad>: Basisverzeichnis
für Seccomp-Profilepodman generate kube webpod -f webpod.yaml
podman play kube webpod.yaml
generate kube: verweigert Überschreiben existierender
Dateiengenerate kube: fehlende Volumes führen zu
unvollständigen YAML-Definitionenplay kube: fehlende Netzwerke → Fehler beim
Pod-Startplay kube: ungültige oder inkompatible
Kubernetes-Spezifikationen verursachen Abbruchplay kube: vorhandene Pods blockieren Neustart ohne
--replaceAuthentifizierung an Registries, Entfernen gespeicherter Anmeldedaten, Abfragen lokaler System- und Laufzeitinformationen sowie Anzeigen der Podman-Versionsdaten.
podman login [OPTIONEN] REGISTRY
podman logout [OPTIONEN] REGISTRY
podman info [OPTIONEN]
podman version [OPTIONEN]
--username, -u <name>: Benutzername--password, -p <passwort>: Passwort--password-stdin: Passwort aus STDIN--authfile <pfad>: Authentifizierungsdatei--tls-verify=<bool>: TLS-Überprüfung--authfile <pfad>: Authentifizierungsdatei--all: alle Registries abmelden--debug: erweiterte Diagnoseinformationen--format <string>: Ausgabeformat--short: reduzierte Versionsausgabepodman login registry.example.com
podman logout registry.example.com podman info
podman version --short
login: Authentifizierung schlägt bei falschen
Zugangsdaten oder deaktivierter TLS-Verifizierung fehllogin: Schreibrechte auf Authfile erforderlichlogout: Registry muss in Authfile existiereninfo: fehlende Berechtigungen im Rootless-Modus können
Teilinformationen einschränkenversion: Formatstrings müssen gültig sein