Podman-Container mit systemd verwalten
Von Emilien Macchi GitHub
Ich habe einen Blog-Beitrag darüber geschrieben, wie wir Podman-Container mit systemd in OpenStack TripleO verwalten.
Ich habe einen SELinux-Blog über das Ausführen eines Containers mit Podman geschrieben. Der Vortrag erklärt, warum SELinux die Verbindung zum libvirt-Socket blockiert. Anschließend wird erklärt, wie man den Container einrichtet, um die Kommunikation zu ermöglichen.
Wenn Podman als root ausgeführt wird, ist der Standardort für die Speicherung /var/lib/containers/storage. Natürlich können Benutzer dieses Verzeichnis nicht verwenden, wenn sie als nicht-root ausgeführt werden, daher erstellt Podman den Speicher standardmäßig in $HOME/.local/share/containers.
Auf der "All Systems Go!"-Konferenz vom 28.-30. September 2018 in Berlin, Deutschland, hielt Dan Walsh einen Vortrag darüber, wie man docker durch podman ersetzen kann, ohne etwas zu verpassen. Der Vortrag wurde aufgezeichnet und kann hier angesehen werden.
Die Folien im PDF-Format sind hier verfügbar.
Ich erhielt kürzlich einen Fehlerbericht über einige riesige Container-Images, die in Docker nicht korrekt funktionierten. Also schlug ich dem Berichterstatter vor, sie mit Podman zu versuchen. Er antwortete, dass er die Images mit docker images sah, aber sie nicht mit podman images sehen konnte.
Ich erklärte ihm, dass die Docker-Image- und Container-Datenbank von der Podman-Image- und Container-Datenbank getrennt sind. Ich sagte ihm, er müsste die Images in Podman ziehen. Dann entschied ich mich, eine coole Funktion von Podman auszuprobieren, bei der ich Images direkt aus dem Docker-Daemon ziehen könnte.
Podman wurde nicht dafür entwickelt, die Startreihenfolge von Containern, Abhängigkeitsprüfungen oder die Wiederherstellung fehlgeschlagener Container zu verwalten. Tatsächlich kann diese Aufgabe von externen Tools übernommen werden, und dieser Blogbeitrag beschreibt, wie wir den systemd-Initialisierungsdienst verwenden können, um mit Podman-Containern zu arbeiten.
Sie haben von Podman und all seiner Coolness für das Ausführen von OCI-basierten Containern erfahren, aber Sie benötigen eine Lösung, die wiederholbar und skriptfähig ist. Anstatt nur Podman-Befehle auszuführen, möchten Sie eine stabile API, in die Sie sich einwählen können, ohne die Ausgabe parsen zu müssen.
Wir haben Sie gehört und stellen nun ein Python-Paket zur Verfügung: python3-podman. Dieses Paket ermöglicht es Ihnen, auf die Funktionen eines Podman-Dienstes mit #nobigfatdaemons zuzugreifen.