Diese Anleitung erklärt, was Podman ist, seine Funktionen, der Unterschied zwischen einem Podman-Container und einem Image und wie Podman in Linux-Betriebssystemen installiert wird.
Was ist Podman?
Podman steht für POD MANager und ist ein Befehlszeilen-Dienstprogramm zur Verwaltung von Open-Source-Containern, das auf libmod
basiert Bücherei.
Mit Podman können Sie Container und Images der Open Container Initiative (OCI), in diese Container gemountete Volumes und aus Gruppen von Containern erstellte Pods erstellen, entwickeln und verwalten.
Die Verwendung von Podman ist dieselbe wie die von Docker
Podman ähnelt Docker in Bezug auf die Verwendung. Podman bietet die gleichen Befehle wie Docker. Wenn Sie bereits mit Docker vertraut sind, werden Sie keinen großen Unterschied spüren.
Podman unterstützt auch eine REST-API, die sowohl eine Docker-kompatible Schnittstelle als auch eine verbesserte Schnittstelle bietet, die erweiterte Podman-Funktionen verfügbar macht.
Obwohl Podman eine ähnliche Schnittstelle wie Docker bietet, weist es einige Unterschiede auf. Die beiden wichtigsten Funktionen sind:Rootless-Modus und Pods .
Rootless-Modus
Im Gegensatz zu Docker benötigt Podman keinen Daemon. Es ist ein daemonloses (rootless) Container-Management-Tool.
Podman benötigt keine Superuser-Rechte, um Container auszuführen. Container können entweder als root
ausgeführt werden oder im Rootless-Modus als normaler Benutzer.
Wenn Sie Podman als Nicht-Root-Benutzer ausführen, erstellt es einen Benutzernamensraum, in dem es die Root-Berechtigung erhält. Dadurch können Dateisysteme gemountet und erforderliche Container eingerichtet werden. Mit anderen Worten:Podman-Container verwenden Benutzer-Namespaces, um root im Container auf den Benutzer festzulegen, der Podman ausführt.
Das Ausführen von rootless Podman verbessert die Sicherheit. Auch wenn die Container-Engine oder Laufzeit kompromittiert wird, da die Angreifer keine Root-Rechte auf Ihrem System haben.
Es ermöglicht auch mehreren nicht privilegierten Benutzern, Container auf demselben Computer auszuführen. Docker ist jetzt rootless Modus Unterstützung. Podman hatte diese Funktion jedoch vor Docker.
Pods
Der andere bemerkenswerte Vorteil von Podman ist, dass Sie eine Gruppe von Containern erstellen können. Wir nennen sie Pods. In Podman können Container "Pods" bilden, die zusammenarbeiten.
Podman bietet großartige Unterstützung für die Verwaltung mehrerer Container, z. B. Pods. Diese Funktion ist in anderen Containerlaufzeittools nicht verfügbar.
OCI-konforme Bilder
Die von Podman erstellten Images entsprechen dem OCI-Standard, sodass die Podman-Images vollständig mit anderen Container-Laufzeittools wie Docker kompatibel sind.
Sie können die neu erstellten Images in Containerregistrierungen wie Quay veröffentlichen oder Docker-Hub sie mit der Welt zu teilen. Jeder kann sie herunterladen, verwenden und sogar verbessern.
System bereit
Podman wurde unter Berücksichtigung von systemd entwickelt. Bedeutung - Podman kann über systemd-Einheiten gesteuert werden. Es unterstützt auch systemd in Containern, out of the box.
Kostenlos und Open Source!
Podman ist ein kostenloses, Linux-natives Tool, das von Red Hat entwickelt wurde und auf anderen Linux-Distributionen perfekt funktionieren sollte.
Bevor wir Podman installieren, möchte ich Ihnen einen kurzen Überblick über die Images und die Container geben. Diese beiden sind eng miteinander verwandt, aber unterschiedlich.
Container vs. Bilder
Ein Image ist die Datei, die entscheidet, wie sich ein Container verhalten soll, und der Container ist die laufende oder angehaltene Phase eines Images.
Sie können viele Container mit demselben Image ausführen. Die Container sind von den restlichen Dateien des Hosts isoliert.
Wenn wir einen Container ausführen, verwendet er ein isoliertes Dateisystem, das vom Image bereitgestellt wird. Das Image besteht aus allem, was zum Ausführen einer Anwendung benötigt wird – alle Abhängigkeiten, Konfigurationen, Skripte, Binärdateien usw.
Das Image enthält auch andere Konfigurationen für den Container, wie z. B. Umgebungsvariablen, einen auszuführenden Standardbefehl und andere Metadaten.
Der folgende Auszug aus der offiziellen Docker-Dokumentation bietet eine klare und prägnante Erklärung von Containern und Images.
Sie können die lokal verfügbaren Bilder mit podman images
auflisten Befehl und die Container mit podman ps
Befehl. Wir werden mehr über Podman-Befehle in unseren kommenden Leitfäden erfahren.
Podman unter Linux installieren
Podman ist in Fedora CoreOS, Fedora Silverblue und Fedora 34 vorinstalliert. Wenn Sie eine dieser Distributionen verwenden, müssen Sie Podman nicht installieren.
Podman ist für viele moderne Linux-Betriebssysteme gepackt und in den Standard-Repositories verfügbar.
Um Podman unter Alpine Linux zu installieren, führen Sie Folgendes aus:
$ sudo apk add podman
Installieren Sie Podman unter Arch Linux, EndeavourOS und Manjaro Linux:
$ sudo pacman -S podman
Installieren Sie Podman in Debian, Ubuntu, Pop_OS!:
$ sudo apt install podman
Installieren Sie Podman in CentOS 8, Fedora 33 und älter, RHEL 8, AlmaLinux 8 und Rocky Linux 8:
$ sudo dnf install podman
Installieren Sie Podman in openSUSE:
$ sudo zypper install podman
Um die installierte Podman-Version zu überprüfen, führen Sie Folgendes aus:
$ podman -v podman version 3.2.2
Weiterlesen:
Lernen Sie Podman-Grundlagen und den Einstieg in Podman unter Linux mit praktischen Beispielen:
- Podman-Tutorial – Erste Schritte mit Podman
Podman online verwenden
Wenn Sie kein Linux haben oder Podman nicht installieren möchten, können Sie Katacoda verwenden, eine Online-Plattform, die viele Sandbox-Umgebungen bereitstellt, um mehr über verschiedene Arten von Technologien zu erfahren und mit ihnen zu spielen.
Um Podman direkt in Ihrem Browser zu verwenden, ohne es auf Ihrem System zu installieren, gehen Sie auf den folgenden Link.
- Podman online mit Katacoda .
Schlussfolgerung
In dieser kurzen Anleitung haben wir uns angesehen, was Podman ist und wie es sich von anderen Container-Laufzeiten wie Docker unterscheidet. Wir haben auch besprochen, was der Unterschied zwischen einem Container und einem Image ist. Schließlich haben wir gesehen, wie man Podman in verschiedenen Linux-Distributionen installiert.