Getty Images

Installation und Bereitstellung von Podman unter Rocky Linux

Rocky Linux führt und installiert Podman aus, ein Open-Source-Linux-Tool und Konkurrent von Docker, das mit Containern Anwendungen findet, ausführt und bereitstellt.

Docker ist aufgrund seiner Einfachheit eine der beliebtesten Standard-Container-Laufzeitmaschinen für Benutzer. Red Hat hat jedoch die Art und Weise geändert, wie es die Ausführung von Docker unterstützt, was dazu führt, dass Benutzer zu Podman wechseln.

Sicherheit ist ein mutmaßlicher Grund, warum Red Hat seine Unterstützung für Docker geändert hat. Podman ist ein naheliegender Ersatz für Docker. Mit Podman können Administratoren Container problemlos ohne Root-Zugriffsrechte bereitstellen.

Docker und Podman sind in der Anwendung relativ ähnlich. Wenn Sie noch keine der beiden Technologien verwendet haben, folgen Sie diesem Ratgeber, der Sie durch die ersten Schritte der Installation und Ausführung von Podman auf Rocky Linux führt.

Was Sie benötigen

Die einzigen Voraussetzungen sind eine laufende Instanz von Rocky Linux und ein Benutzer mit sudo-Berechtigungen.

Installation von Podman

Podman sollte standardmäßig auf Rocky Linux installiert sein. Um das zu überprüfen, melden Sie sich an, öffnen Sie ein Terminalfenster und geben Sie den folgenden Befehl ein:

podman -v

Die Ausgabe sollte in etwa so aussehen:

podman version 4.6.1

Wenn die Fehlermeldung Befehl nicht gefunden angezeigt wird, installieren Sie Podman mit dem folgenden Befehl:

sudo dnf install podman -y

Schritt 1: Abrufen eines Images

Nachdem Podman installiert wurde, ist es an der Zeit, den ersten Schritt zu machen, nämlich ein Image aus einem der Repositories zu suchen und herunterzuladen. Verwenden Sie den Nginx-Webserver-Container. Suchen Sie zunächst mit dem folgenden Befehl nach Nginx:

podman search nginx

In der Ausgabe sollten mehrere Einträge angezeigt werden, die die folgenden Optionen enthalten:

  • docker.io/library/nginx Official build of Nginx
  • docker.io/library/unit Official build of NGINX Unit: Universal Web...
  • docker.io/nginx/nginx-ingress NGINX and NGINX Plus Ingress Controllers fo...
  • docker.io/nginxinc/nginx-unprivileged Unprivileged NGINX Dockerfiles
  • docker.io/nginx/nginx-prometheus-exporter NGINX Prometheus Exporter for NGINX and NGINX...

Es gibt auch zahlreiche Einträge von registry.redhat.io. Rufen Sie die neueste Version des offiziellen Nginx-Images mit dem folgenden Befehl aus dem Docker-Repository ab:

podman pull nginx:latest

Die folgenden drei Optionen sollten angezeigt werden:

1. registry.access.redhat.com/nginx:latest

2. Registry.redhat.io/nginx:latest

3. docker.io/library/nginx:latest

Scrollen Sie mit den Pfeiltasten der Tastatur nach unten zum Eintrag docker.io und drücken Sie die Eingabetaste. Das Image sollte schnell abgerufen werden und mit einer langen Zeichenfolge enden, bei der es sich um die eindeutige Image-ID für die Instanz handelt. Überprüfen Sie den erfolgreichen Abruf mit dem folgenden Befehl:

podman images

Sie sollten etwas Ähnliches wie das Folgende sehen:

docker.io/library/nginx latest 92b11f67642b 3 weeks ago 191 MB

Schritt 2: Bereitstellung eines Containers

Als nächstes stellen Sie einen Container mit dem abgerufenem Image bereit. Stellen Sie den Nginx-Container mit dem folgenden Befehl bereit:

podman run --name podman-nginx -p 8080:80 -d nginx

Die Erklärung für den obigen Befehl sieht wie folgt aus:

  • podman ist die Laufzeit.
  • run weist die Laufzeit an, das Folgende auszuführen.
  • --name weist Podman an, wie der Name des Containers lautet.
  • podman-nginx ist der Name des Containers.
  • -p teilt Podman mit, dass es sich bei den folgenden Angaben um die internen und externen Ports für den Container handelt.
  • 8080:80 definiert Port 8080 als externen und 80 als internen Port.
  • -d weist Podman an, dass der Modus detached ausgeführt wird.
  • Nginx ist das Image für den Container.

Nach Ausführung des Befehls sollte eine lange Zeichenfolge angezeigt werden. Diese Zeichen bilden die eindeutige ID für den ausgeführten Container. Überprüfen Sie, ob der Container ausgeführt wird, indem Sie den folgenden Befehl eingeben:

podman ps -a

Die Ausgabe sollte in etwa so aussehen:

ef96c99c3861 docker.io/library/nginx:latest nginx -g daemon o... 44 seconds ago Up 44 seconds 0.0.0.0:8080->80/tcp podman-nginx

Ihr erster Container wurde jetzt bereitgestellt und ausgeführt. Benutzer können nun zu Entwicklungszwecken auf den Container zugreifen. Um den laufenden Container zu verwenden, führen Sie den folgenden Befehl aus:

podman exec -it podman-nginx /bin/bash

Die Ausgabe sollte in etwa so aussehen:

root@ef96c99c3861:/#

Das bedeutet, dass Sie sich nun im laufenden Container befinden und ihn für Entwicklungs- oder Testzwecke verwenden können. Beenden Sie den Container anschließend mit dem Befehl exit.

Um den Container zu stoppen, geben Sie den folgenden Befehl ein. Dabei ist zu beachten, dass die ID die ersten vier Zeichen der Container-ID sind:

podman stop ID

Um den Container zu löschen, benötigen Sie den folgenden Befehl:

podman rm ID

Eine einfachere Methode

Rocky Linux bietet eine weitere Methode zum Ausführen und Verwalten von Podman-Containern. Cockpit, ein webbasiertes Verwaltungs-Tool mit Podman-Unterstützung, wird mit dem folgenden Befehl ausgeführt:

sudo systemctl enable --now cockpit.socket

Sobald Cockpit ausgeführt wird, öffnen Sie einen Webbrowser und rufen Sie https://SERVER:9090 auf, wobei SERVER die IP-Adresse des Hosting-Servers ist. Melden Sie sich mit einem Benutzer an, der über sudo-Berechtigungen verfügt. In der linken Seitenleiste befindet sich eine Liste der Podman-Container. Klicken Sie auf diesen Eintrag, um den laufenden Podman-nginx-Container anzuzeigen. Klicken Sie auf die mit dem Container verknüpfte Menüschaltfläche mit den drei Punkten und führen Sie eine der folgenden Aktionen aus: Beenden, Beenden erzwingen, Neustarten, Neustarten erzwingen, Anhalten, Umbenennen, Festschreiben oder Löschen.

Erfahren Sie mehr über Data-Center-Betrieb