Wie man Podman unter CentOS 8 installiert und verwendet

Podman ist ein kostenloses, quelloffenes und Linux-eigenes Tool, das zum Ausführen, Erstellen, Freigeben und Bereitstellen von Anwendungen in Containern verwendet wird. Es ermöglicht die Verwaltung von Containern und Images sowie von Volumes, die in diese Container eingebunden sind. Podman ist eine daemonlose Containerisierungs-Engine und erfreut sich unter Entwicklern als Ersatz für Docker immer größerer Beliebtheit.

In diesem Beitrag zeigen wir dir, wie du Podman auf CentOS 8 installierst und verwendest.

Voraussetzungen

  • Ein Server, auf dem CentOS 8 läuft.
  • Ein Root-Passwort ist auf dem Server eingerichtet.

Podman installieren

Zuerst musst du das EPEL-Repository auf deinem System installieren. Du kannst es mit dem folgenden Befehl installieren:

dnf install epel-release -y

Nach der Installation des EPEL-Repo führst du den folgenden Befehl aus, um Podman zu installieren:

dnf install podman -y

Sobald Podman installiert ist, überprüfe die installierte Version von Podman mit dem folgenden Befehl:

podman --version

Du solltest die folgende Ausgabe sehen:

podman version 3.0.2-dev

Um detaillierte Informationen zu erhalten, führe den folgenden Befehl aus:

podman info

Du solltest die folgende Ausgabe sehen:

host:
  arch: amd64
  buildahVersion: 1.19.8
  cgroupManager: systemd
  cgroupVersion: v1
  conmon:
    package: conmon-2.0.26-3.module_el8.4.0+830+8027e1c4.x86_64
    path: /usr/bin/conmon
    version: 'conmon version 2.0.26, commit: 9dea73702793340168deaa5a0d21ca5ce1fcb5d7'
  cpus: 2
  distribution:
    distribution: '"centos"'
    version: "8"
  eventLogger: file
  hostname: centos8
  idMappings:
    gidmap: null
    uidmap: null
  kernel: 4.18.0-193.6.3.el8_2.x86_64
  linkmode: dynamic
  memFree: 479723520
  memTotal: 4130037760
  ociRuntime:
    name: runc
    package: runc-1.0.0-73.rc93.module_el8.4.0+830+8027e1c4.x86_64
    path: /usr/bin/runc
    version: |-
      runc version spec: 1.0.2-dev
      go: go1.15.7
      libseccomp: 2.4.1
  os: linux

Image mit Podman finden und herunterladen

Um ein Debian-Image zu finden, führe den folgenden Befehl aus:

podman search debian

Du solltest alle verfügbaren Debian-Images in der folgenden Ausgabe sehen:

INDEX      NAME                                                        DESCRIPTION                                      STARS   OFFICIAL  AUTOMATED
docker.io  docker.io/library/debian                                    Debian is a Linux distribution that's compos...  3894    [OK]      
docker.io  docker.io/smartentry/debian                                 debian with smartentry                           6                 [OK]
docker.io  docker.io/library/ubuntu                                    Ubuntu is a Debian-based Linux operating sys...  12423   [OK]      
docker.io  docker.io/samueldebruyn/debian-git                          a minimal docker container with debian and g...  22                [OK]
docker.io  docker.io/i386/debian                                       Debian is a Linux distribution that's compos...  14                
docker.io  docker.io/jdub/debian-sources-resource                      Concourse CI resource to check for updated D...  0                 [OK]
docker.io  docker.io/itscaro/debian-ssh                                debian:jessie                                    28                [OK]
docker.io  docker.io/eboraas/debian                                    Debian base images, for all currently-availa...  8                 [OK]
docker.io  docker.io/amd64/debian                                      Debian is a Linux distribution that's compos...  6                 
docker.io  docker.io/arm32v7/debian                                    Debian is a Linux distribution that's compos...  72                
docker.io  docker.io/dockershelf/debian                                Repository for docker images of Debian. Test...  1                 [OK]
docker.io  docker.io/ppc64le/debian                                    Debian is a Linux distribution that's compos...  4                 
docker.io  docker.io/arm64v8/debian                                    Debian is a Linux distribution that's compos...  26                
docker.io  docker.io/spritsail/debian-builder                          A Docker image based on debian:slim ideal fo...  1                 [OK]
docker.io  docker.io/arm32v5/debian                                    Debian is a Linux distribution that's compos...  2                 
docker.io  docker.io/vpgrp/debian                                      Docker images of Debian.                         2                 
docker.io  docker.io/multiarch/debian-debootstrap                      multiarch ports of debian-debootstrap            13                
docker.io  docker.io/1and1internet/debian-9-nginx-php-7.2-wordpress-4  debian-9-nginx-php-7.2-wordpress-4               0                 [OK]
docker.io  docker.io/mdoerges/debian-buster-nginx                      Debian Buster with Nginx                         0                 
docker.io  docker.io/fleshgrinder/debian                               Debian base images for production and multis...  0                 [OK]
docker.io  docker.io/s390x/debian                                      Debian is a Linux distribution that's compos...  2                 
docker.io  docker.io/vicamo/debian                                     Debian docker images for all versions/archit...  3                 
docker.io  docker.io/konstruktoid/debian                               Debian base image                                0                 [OK]
docker.io  docker.io/casept/debian-amd64                               A debian image built from scratch. Mostly fo...  0                 
docker.io  docker.io/vergissberlin/debian-development                  Docker debian image to use for development, ...  6                 [OK]

Als Nächstes lädst du das Debian-Image mit dem folgenden Befehl herunter:

podman pull debian

Du solltest die folgende Ausgabe erhalten:

Resolved "debian" as an alias (/etc/containers/registries.conf.d/000-shortnames.conf)
Trying to pull docker.io/library/debian:latest...
Getting image source signatures
Copying blob 0bc3020d05f1 done  
Copying config 7a4951775d done  
Writing manifest to image destination
Storing signatures
7a4951775d157843b47250a2a5cc7b561d2abe0b29ae6f19737a04635302eacf

Überprüfe das heruntergeladene Image mit dem folgenden Befehl:

podman images

Du solltest die folgende Ausgabe erhalten:

REPOSITORY                TAG     IMAGE ID      CREATED       SIZE
docker.io/library/debian  latest  7a4951775d15  33 hours ago  119 MB

Einen Container mit Podman starten

Jetzt kannst du mit dem folgenden Befehl einen Container aus dem Debian-Image starten:

podman run -dit --name debian-container debian

Du solltest die folgende Ausgabe erhalten:

5fb79d2ff9748be9474977852db989d4de489546526683e840c501249823a4bf

Du kannst den laufenden Container auch mit dem folgenden Befehl überprüfen:

podman ps

Du solltest die folgende Ausgabe sehen:

CONTAINER ID  IMAGE                            COMMAND  CREATED         STATUS             PORTS   NAMES
5fb79d2ff974  docker.io/library/debian:latest  bash     29 seconds ago  Up 28 seconds ago          debian-container

Um den laufenden Container zu verbinden, führe den folgenden Befehl aus:

podman attach debian-container

Sobald du verbunden bist, solltest du die folgende Ausgabe erhalten:

root@5fb79d2ff974:/#

Du kannst auch jeden beliebigen Befehl innerhalb des laufenden Containers ausführen:

root@5fb79d2ff974:/# apt-get update

Um den Debian-Container zu verlassen, führe den folgenden Befehl aus:

root@5fb79d2ff974:/# exit

Um das Log des laufenden Containers zu überprüfen, führe den folgenden Befehl aus:

podman logs -f debian-container

Um den laufenden Container anzuhalten, führe den folgenden Befehl aus:

podman stop debian-container

Um den gestoppten Container zu entfernen, führe den folgenden Befehl aus:

podman rm debian-container

Pods mit Podman verwalten

In diesem Abschnitt zeigen wir dir, wie du Pods mit Podman verwalten kannst.

Um einen neuen Pod mit dem Namen Webserver zu erstellen, führe den folgenden Befehl aus:

podman pod create --name webserver

Du solltest die folgende Ausgabe erhalten:

9cc9b2bdcfe1b774129f2d5b50a4b52c746a0f8917780ae7f2c786fa7767cd19

Um alle Pods aufzulisten, führe den folgenden Befehl aus:

podman pod list

Du solltest die folgende Ausgabe erhalten:

POD ID        NAME       STATUS   CREATED         INFRA ID      # OF CONTAINERS
9cc9b2bdcfe1  webserver  Created  21 seconds ago  3a0c7750fed9  1

Um einen laufenden Container innerhalb deines Pods zu überprüfen, führe den folgenden Befehl aus:

podman ps -a --pod

Du solltest die folgende Ausgabe erhalten:

CONTAINER ID  IMAGE                                         COMMAND  CREATED         STATUS   PORTS   NAMES               POD ID        PODNAME
3a0c7750fed9  registry.access.redhat.com/ubi8/pause:latest           38 seconds ago  Created          9cc9b2bdcfe1-infra  9cc9b2bdcfe1  webserver

Um einen neuen CentOS-Container zu einem Pod hinzuzufügen, führe den folgenden Befehl aus:

podman run -dt --pod webserver centos:latest top

Du solltest die folgende Ausgabe erhalten:

Resolved "centos" as an alias (/etc/containers/registries.conf.d/000-shortnames.conf)
Trying to pull quay.io/centos/centos:latest...
Getting image source signatures
Copying blob 7a0437f04f83 done  
Copying config 300e315adb done  
Writing manifest to image destination
Storing signatures
fcd9a724097759c29330bd57e557eab9778b3d6736695ebf9afedfbd9c0db5e3

Überprüfe nun den hinzugefügten Container mit folgendem Befehl:

podman ps -a --pod

Du solltest die folgende Ausgabe erhalten:

CONTAINER ID  IMAGE                                         COMMAND  CREATED             STATUS             PORTS   NAMES                 POD ID        PODNAME
3a0c7750fed9  registry.access.redhat.com/ubi8/pause:latest           About a minute ago  Up 16 seconds ago          9cc9b2bdcfe1-infra    9cc9b2bdcfe1  webserver
fcd9a7240977  quay.io/centos/centos:latest                  top      17 seconds ago      Up 16 seconds ago          recursing_goldwasser  9cc9b2bdcfe1  webserver

Fazit

In der obigen Anleitung hast du gelernt, wie du Podman installierst und verwendest, um Container unter CentOS 8 zu verwalten. Podman ist Docker sehr ähnlich und ein großartiger Ersatz, der dir die Arbeit erleichtert.

Das könnte dich auch interessieren …