GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren und verwenden Sie Podman (Docker-Alternative) unter Ubuntu 20.04

Podman ist ein Open-Source-Tool zum Verwalten von Containern, Images, Volumes und Pods (Gruppe von Containern). Es verwendet die libpod-Bibliotheks-APIs zum Verwalten von Container-Lebenszyklen und unterstützt mehrere Container-Image-Formate, einschließlich OCI (Open Container Initiative) und Docker-Images.

Podman ist eine OCI (Open Container Initiative)-konforme Container-Engine. Es ist mit der Docker-CLI-Schnittstelle kompatibel und ermöglicht es Ihnen, Container rootless auszuführen (Container ohne Root-Rechte auszuführen). Podman wurde als Teil von Red Hat Enterprise Linux veröffentlicht, das als Linux-Container-Tool der nächsten Generation mit schnellerem Experimentieren und schnellerer Entwicklung von Funktionen entwickelt wurde.

In diesem Tutorial erfahren Sie, wie Sie Podman auf dem Ubuntu 20.04-System installieren. Sie werden Podman installieren und die grundlegende Verwendung von Podman zum Verwalten von Docker-Containern, -Images und -Volumes lernen.

Voraussetzungen

  • Ein Ubuntu 20.04-Server - Stellen Sie sicher, dass alle Pakete die neueste Version sind, um veraltete Abhängigkeiten loszuwerden und Sie zu einem Fehler während der Installation zu führen.
  • Ein Benutzer mit Root-Rechten , oder Benutzer root - um neue Pakete zu installieren und die Konfiguration systemweit zu ändern.

Installieren von Podman auf Ubuntu 20.04

Zuerst fügen Sie ein Drittanbieter-Repository und einen Schlüssel für die Installation von podman auf dem Ubuntu 20.04-System hinzu.

1. Führen Sie den folgenden Befehl aus, um Umgebungsvariablen in die Datei „/etc/os-release“ zu exportieren ' Datei.

. /etc/os-release

2. Fügen Sie das Podman-Repository mit stabiler Version hinzu und fügen Sie den GPG-Schlüssel mit dem folgenden Befehl zu Ihrem System hinzu.

echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_${VERSION_ID}/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list

curl -L "https://download.opensuse.org/repositories/devel:/kubic :/libcontainers:/stable/xUbuntu_${VERSION_ID}/Release.key" | sudo apt-key add -

3. Ubuntu-Repositorys aktualisieren/aktualisieren und alle Pakete auf die neueste Version aktualisieren.

sudo apt update
sudo apt -y upgrade

4. Danach installieren Sie podman mit dem folgenden apt-Befehl.

sudo apt install podman

Geben Sie 'y ein ' und drücken Sie 'Enter ' um die Installation fortzusetzen.

5. Überprüfen Sie nach Abschluss der Installation die Podman-Version mit dem folgenden Befehl.

Podman-Version

Unten sehen Sie eine ähnliche Ausgabe, die Sie erhalten werden.

Wie Sie sehen können, haben Sie podman v3.3.1 installiert, das mit Go 1.16 für die Linux-Architektur amd64 (64-Bit) kompiliert wurde.

Neuen Benutzer erstellen und hello-world-Container ausführen

Podman ermöglicht es Ihnen, Container unter dem Benutzer ohne Root-Rechte auszuführen. In dieser Phase fügen Sie einen neuen Benutzer hinzu und führen den Container „hello-world“ basierend auf dem Docker-Image aus.

1. Führen Sie den folgenden Befehl aus, um einen neuen Benutzer „johndoe“ hinzuzufügen.

useradd -m -s /bin/bash johndoe
passwd johndoe

Geben Sie das neue Passwort für den Benutzer „johndoe“ ein '.

2. Melden Sie sich als Nächstes als Benutzer „johndoe“ an und führen Sie den Container basierend auf dem Docker-Image „hello-world“ aus.

Melden Sie sich als Benutzer 'johndoe an '.

su - johndoe

Führen Sie einen neuen Container basierend auf dem Docker-Image „hello-world“ aus ' mit dem Podman-Befehl.

podman run hello-world

Sie werden gefragt, welche Containerregistrierung Sie verwenden möchten, wählen Sie die Containerregistrierung „docker.io“ und Sie sehen eine ähnliche Ausgabe wie unten.

3. Führen Sie den folgenden Befehl aus, um Ihren Container und Ihre Images auf dem lokalen Computer zu überprüfen.

podman ps -a
Podman-Bilder

Sie werden sehen, dass ein neuer Container erstellt wird und der aktuelle Status „Beendet“ ist '. Der Container basiert auf der Datei „hello-world ' Docker-Image.

Grundlegende Verwendung von Podman

In diesem Handbuch erfahren Sie, wie Sie Podman zum Verwalten von Containern, Images und Volumes verwenden. Sie lernen den grundlegenden Befehl von podman zum Verwalten von Containern kennen, und die Befehle, die Sie für dieses Handbuch verwenden, sind zu 100 % identisch mit dem Docker-CLI-Befehl.

1. Um Container-Images zu finden, die mit dem Podman kompatibel sind, führen Sie den folgenden Podman-Befehl aus.

podman search nginx

Und Sie sehen eine Liste mit Container-Images aus dem standardmäßigen Docker Bildregistrierung und Quay Bildregistrierung.

Wählen Sie die Container-Images „nginx“ aus der Docker-Registrierung aus und laden Sie sie mit dem folgenden Podman-Befehl auf Ihren lokalen Computer herunter.

podman pull nginx:alpine

Wählen Sie die Containerregistrierung „docker.io“. ' und der Download-Vorgang für das Nginx-Container-Image beginnt.

2. Um verfügbare Container-Images auf Ihrem lokalen Rechner zu prüfen, führen Sie den folgenden podman-Befehl aus.

Podman-Bilder

Und Sie werden zwei Bilder sehen - hello-world und nginx Bilder.

3. Starten und führen Sie als Nächstes einen neuen Container basierend auf dem Image „nginx:alpine“ aus ', führen Sie den podman-Befehl mit der Option 'run aus ' wie unten.

podman run -it --rm -d -p 8080:80 --name web nginx:alpine

Einige Optionen, die Sie kennen müssen:

  • -ich oder --interaktiv - Behälter STDIN offen halten, auch wenn er nicht befestigt ist.
  • -t oder --tty - Weist ein Pseudo-Terminal zu, das Ihr Terminal mit STDIN und STDOUT des Containers verbindet.
  • --rm - Container automatisch entfernen, wenn der Container beendet oder gestoppt wird.
  • -d - Ausführen des Containers im Hintergrund, Trennen des Containers, nachdem er ausgeführt wurde.
  • -p 8080:80 - Ordnen Sie den Port zwischen Container und Hostsystem zu. Der Port „80“ auf dem Container wird dem Hostsystem-Port „8080“ zugeordnet.
  • --name web - Geben Sie den neuen Containernamen als 'web' an.
  • nginx:alpine - Das von uns verwendete Bild ist 'nginx:alpine'.

Sie sehen die zufällige Zeichenfolge und Nummer Ihres laufenden Containers. Überprüfen Sie Ihren laufenden Container mit dem folgenden Podman-Befehl.

podman ps

Sie werden die Ausgabe wie unten sehen.

Der Containerstatus ist 'Up ' und macht den TCP-Port '8080 verfügbar ' auf dem Host-Rechner.

Öffnen Sie Ihren Webbrowser und rufen Sie die IP-Adresse Ihres Servers mit dem Port „8080“ auf ' wie unten.

http://192.168.1.15:8080/

Und Sie sehen das Standardalter „index.html“ Ihres Nginx-Containers.

4. Darüber hinaus können Sie die Protokolle Ihres Containers mithilfe der 'Protokolle überprüfen ' Option wie unten.

podman protokolliert das Web

Oder Sie können die letzten Zahlenzeilen des Containerprotokolls mit dem '--tail angeben ' Option wie unten.

podman logs --tail 10 web

5. Jetzt können Sie den laufenden Container mit der Podman-Option 'Stop stoppen ' wie unten.

podman stop web

Ihr Container 'web' wird gestoppt. Überprüfen Sie dies mit dem folgenden Befehl.

podman ps
podman ps -a

Und Sie werden eine ähnliche Ausgabe wie unten sehen.

Der Container „web“ wird angehalten und automatisch gelöscht, da Sie die Option „--rm“ verwenden auf Ihren Podman-Befehl.

6. Als Nächstes erfahren Sie, wie Sie das benutzerdefinierte Volume verwenden, um die Standarddatei „index.html“ im neuen Container zu ändern.

Erstellen Sie ein neues Verzeichnis „~/data ' und die 'index.html ' Datei mit dem folgenden Befehl.

mkdir -p ~/data/
nano ~/data/index.html

Kopieren Sie das folgende HTML-Skript und fügen Sie es ein.




 
  Willkommen bei Container Nginx


 

Hallo vom Nginx-Container – verwaltet mit Podman



Drücken Sie 'Strg+x ' Taste, geben Sie 'y ein ' und drücken Sie dann 'Enter ' um die Konfiguration zu speichern und zu beenden.

Führen Sie nun den folgenden Podman-Befehl aus, um den neuen Container mit benutzerdefiniertem Volume auszuführen.

podman run -it --rm -d -p 8080:80 --name web -v ~/data:/usr/share/nginx/html nginx:alpine

Eine Option, die Sie kennen müssen:

  • -v - Geben Sie das Volumen für Ihren Behälter an. Die Datei „~/data '-Verzeichnis wird in das neue Container-Verzeichnis '/usr/share/nginx/html gemountet '.

Führen Sie nun den folgenden Befehl aus, um den laufenden Container zu überprüfen.

podman ps

Sie sehen den neuen Container „web“. ' im Status 'Up '.

Öffnen Sie als Nächstes Ihren Webbrowser und geben Sie Ihre Server-IP-Adresse mit Port „8080“ ein '.

http://192.168.1.15:8080/

Und Sie sehen die von Ihnen erstellte benutzerdefinierte index.html-Seite ganz oben, was '~/data bedeutet ' Verzeichnis ist im 'web gemountet ' Container.

7. Als nächstes können Sie sich mit der Option 'exec am laufenden Container anmelden ' und Ausführen der 'sh'-Shell.

Stellen Sie sicher, dass Ihr Container „web ' wird mit dem folgenden Befehl ausgeführt.

podman ps

Führen Sie nun den folgenden Podman-Befehl aus, um sich beim Container „web“ anzumelden.

podman exec -it web /bin/sh

Überprüfen Sie den Hostnamen des Containers „web“.

Hostname

Überprüfen Sie die IP-Adresse und die Routing-Tabelle des Containers „web“.

ip a
route -n

Geben Sie nun 'exit ein ', um sich vom Container 'web abzumelden '.

8. Bereinigen Sie nun Ihre Umgebung mit dem folgenden Befehl.

Beenden Sie den Container „web“. ' mit dem untenstehenden Podman-Befehl.

podman stop web

Entfernen Sie alle Container mit dem Status „Exited“ mit dem untenstehenden Podman-Befehl.

podman rm $(podman ps --filter "status=beendet" -q)

Schlussfolgerung

Glückwunsch! Sie haben Podman erfolgreich auf einem Ubuntu 20.04-System installiert. Außerdem haben Sie die grundlegende Verwendung von Podman zum Herunterladen von Container-Images, zum Ausführen des Containers, zum Überprüfen des Containerstatus, von Protokollen und zur grundlegenden Verwendung von Podman zum Verwalten von Volumes erlernt. Im nächsten Schritt können Sie versuchen, Ihre benutzerdefinierten Images mit OCI-Spezifikationen für das Pushen/Hochladen Ihrer Anwendung in die Containerregistrierung zu erstellen.


Ubuntu
  1. So installieren und verwenden Sie Docker unter Ubuntu 20.04

  2. So installieren und verwenden Sie Wine unter Ubuntu 20.04

  3. So installieren und verwenden Sie Docker unter Ubuntu 18.04

  4. So installieren und verwenden Sie Docker Compose unter Ubuntu 18.04

  5. So installieren und verwenden Sie Docker in Ubuntu 20.04

So installieren und verwenden Sie R unter Ubuntu

So installieren und verwenden Sie Docker Compose unter Ubuntu 20.04

So installieren und verwenden Sie Docker Compose unter Ubuntu 22.04

So installieren und verwenden Sie Docker unter Ubuntu 22.04

So installieren und verwenden Sie Docker unter Ubuntu 20.04

So installieren und verwenden Sie Podman (Docker-Alternative)