Podman - Container #
Nachdem ich bereits längere Erfahrung mit virtualisierung von ganzen Maschinen habe (zur Zeit benutze ich hauptsächlich KVM aber auch noch ein paar VirtualBox Instanzen), wollte ich doch mal sehen, was denn nun wirklcih hiner all diesem Gerede von Containers steckt. Im Grunde könnte das ja eine Möglcihkeit sein, meinen Virtualisierungs-Server noch effektiver auszulasten als mit den relativ schwergewichtigen KVM-INstanzen. Also habe ich mich mal eingelesen.
Die erste Wahl scheint wohl zu sein, ob man Docker oder podman
benutzt. Da alle Vergleiche betonen, das podman ja so viel hipper sei, weil es keinen zentralen Daemon benutzt, habe ich mich entschieden, meine ersten Container-Experiemnte hiermit zu machen. Irgendwie auch aus Abenteuerlust, denn sowas verspricht natürlich, das weder Installation, noch Tools und Dokumentation wirklich ausgereift sind. Kicher!
Installation #
Um es nicht allzu kompliziert zu machen, habe ich mich entschlossen, es mit Debian-Paketen zu versuchen. Da gerade Debian 10 Buster aktuell ist, geht das aber natürlich nicht. Also fing ich damit an, auf Debian 11 Bullseye/Testing zu upgraden. Danach war der erste Schritt dann trivial:
aptitude install podman
Ich wollte von vorneherein meine Container als Benutzer (und nicht als root verwalten). Damit das auf einem normalen Debian-System funktioniert, muss man wohl folgendes erlauben:
sysctl -w kernel.unprivileged_userns_clone=1
IN den allermeisten Fällen macht es grossen Sinn, als Ausgangspunkt eines eigenen Images ein vorbereitetes Docker-Image von einem zentralen Repository zu nehmen. Oftmals will man natürlich auch beriets ein fertiges Image iener Applikation dort herunterladen. Eine Liste solcher Images gibt es in "/etc/containers/registries.conf.d/shortnames.conf". Um da mit der search-Funktion einfacharbeiten zu können, habe ich in der Datei /etc/containers/registries.conf noch diese Zeilen hinzugefügt. Ich habe hier das Repository "docker.io" benutzt, das mir recht gross und vielversprechend erscheint. Man kann dort natürlich auch andere stattdessen oder zusätzlich angeben.
# -TB- [registries.search] registries = ['docker.io']
Danach funktioniert dann auch ein Befehl wie dieser, um z.B. das aktuelle Debian-Image zu finden. Es ergeben sich Zeilen aus der Suche, aus denen man dann (mit pull) ein entsprechendes Image heraussuchen und herunterladen kann.
podman search debian --filter=is-official podman pull docker.io/library/debian