So installierst du Docker auf Rocky Linux 8
Docker ist eine Virtualisierungsplattform, mit der du isolierte Entwicklungscontainer erstellen kannst. Docker wurde 2013 eingeführt und bietet die Möglichkeit, deine Anwendungen auf jedem Rechner auszuführen, unabhängig von Betriebssystem und Plattform. Heute nutzen viele Entwickler/innen Docker, um ihre Anwendungen in Containern zu testen und zu implementieren. Container sind ressourcenisolierte virtuelle Instanzen, die es ermöglichen, mehrere isolierte Systeme auf einem einzigen Host-Rechner auszuführen.
Warum Docker?
Docker macht es dir leicht, Anwendungen auf verschiedenen Plattformen zu erstellen, bereitzustellen und auszuführen, ohne dass das Risiko von Inkompatibilitäten zwischen Entwicklungs- und Produktionsumgebungen besteht. Außerdem kannst du damit deine Infrastruktur effizienter verwalten.
Es gibt zwei Editionen von Docker: die Community Edition (Docker CE) und die Enterprise Edition (Docker EE). Docker EE ist eine unternehmenstaugliche Container-Management-Lösung.
Du kannst Docker-Container-Images von offiziellen Repositories, den sogenannten Registries, herunterladen. Dazu gehören öffentliche Registries wie Docker Hub oder private wie Registry Hub. Mit Docker Commit kannst du auch deine eigenen angepassten Images erstellen.
In diesem Leitfaden erfährst du, wie du Docker auf Rocky Linux 8 installierst und verwendest.
Voraussetzungen
Um diesen Artikel zu lesen, brauchst du Folgendes:
- Eine frische Installation von Rocky Linux 8
- Du musst mindestens 2 GB RAM in deinem System installiert haben. Optional kannst du je nach Bedarf mehr als 2 GB zuweisen. 2 vCPUs/CPU-Kerne und mindestens 20 GB Festplattenspeicher für Docker, plus zusätzlichen freien Speicherplatz, je nachdem, wie viele Container-Images du erstellen willst.
- Ein Benutzer mit sudo-Rechten ist auf dem Server konfiguriert.
Aktualisieren des Servers
Stelle zunächst sicher, dass dein Server auf dem neuesten Stand ist, indem du die folgenden Befehle ausführst:
sudo dnf update -y
Wenn frühere Versionen von Docker auf deinem System installiert sind, musst du sie mit den folgenden Befehlen entfernen:
sudo dnf remove docker*
Installieren von Docker
Füge zunächst das offizielle Docker-Repository hinzu, indem du den folgenden Befehl verwendest:
sudo dnf install -y dnf-utils
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
Aktualisiere die System-Repos mit dem folgenden Befehl:
sudo dnf update -y
Du kannst das neu hinzugefügte Repository mit dem folgenden Befehl auflisten:
sudo dnf repolist -v
Installiere Docker CE wie folgt auf deinem System:
sudo dnf install -y docker-ce
Nach der Installation kannst du die Version von Docker Enterprise Edition mit dem folgenden Befehl überprüfen:
docker --version
Du solltest eine ähnliche Ausgabe wie die folgende sehen:
Starte den Docker-Dienst und stelle ihn so ein, dass er automatisch startet, wenn das System hochfährt.
sudo systemctl start docker
sudo systemctl enable docker
Überprüfe den Status des Docker-Dienstes.
sudo systemctl status docker
Du kannst sehen, dass der Dienst in grüner Farbe aktiv ist (läuft). Wenn du eine Ausgabe wie diese siehst, ist die Installation von Docker erfolgreich.Drücke q, um zur Eingabeaufforderung zurückzukehren.
Nicht-Root-Zugriff zulassen
Wenn du Docker als Standardbenutzer ausführst, kann es sein, dass du eine Fehlermeldung wie „Error starting daemon“ erhältst. Um die Ausführung des Docker-Befehls zu ermöglichen, ohne ihm das Präfix sudo voranzustellen, füge deinen aktuellen Systembenutzer mit dem folgenden Befehl zur Docker-Gruppe hinzu:
sudo usermod -aG docker $USER
Dabei ist $USER der Name deines Systembenutzers. Melde dich ab und wieder an, damit diese Änderung wirksam wird.
Überprüfen der Docker-Installation
Du kannst überprüfen, ob Docker richtig installiert ist, indem du das Docker-Image hello-world aus dem Docker-Hub abrufst. Docker Hub ist eine öffentliche Registry, die nützliche Docker-Images enthält. Du kannst deine eigenen Images erstellen oder bereits erstellte und freigegebene Images aus dem Docker Hub ziehen.
docker container run hello-world
Wenn das hello-world-Image nicht auf dem Host gefunden wird, entdeckt Docker es automatisch und lädt es vom Docker Hub herunter. Nachdem das Image heruntergeladen wurde, instanziiert der Docker-Daemon daraus einen neuen Container und führt das Programm darin aus, um „Hello from Docker!“ auszudrücken.
Docker-Befehle verwenden
Jetzt, da Docker installiert ist und funktioniert, wollen wir uns ansehen, wie man es benutzt. Du kannst alle Docker-Befehle auflisten, indem du einfach eintippst:
docker
Um Informationen wie OSType, Architektur, CPUs, Gesamtspeicher zu erhalten, führe den Befehl info mit docker aus.
sudo docker info
Um die im Docker Hub verfügbaren Images zu durchsuchen, kannst du den Befehl search mit dem Befehl docker ausführen. Um zum Beispiel ein centos-Image zu suchen, gibst du
sudo docker search centos
Das Skript wird Docker Hub durchsuchen und die passenden Images zurückgeben. Unten siehst du die Liste der verfügbaren Images für centos.
In der Spalte OFFICIAL siehst du den OK-Status, der anzeigt, dass diese Images von dem Unternehmen hinter dem Projekt unterstützt werden.
Mit dem Befehl pull kannst du ein Image auf deinen Computer herunterladen, nachdem du das gewünschte Image identifiziert hast.
sudo docker pull centos
Mit diesem Befehl wird die neueste Version des Centos-Images auf deinen Computer gezogen. Um die Liste der Images auf deinem System zu sehen, gibst du ein:
sudo docker images
Die Ausgabe sollte ungefähr so aussehen wie die folgende:
Ausführen eines Docker-Containers
Du kannst einen Docker-Container mit den Befehlen docker run oder docker create starten. Mit docker run kannst du interaktiv einen neuen Container erstellen oder ein bereits vorhandenes Image aus deinem lokalen Dateisystem, der Registry oder dem Docker Hub übergeben.
Die Befehlszeilensyntax von docker run lautet wie folgt:
sudo docker run [OPTIONS] IMAGE [COMMAND] [ARG…]
Starten wir zum Beispiel einen Container mit dem neuesten Image von centos, das wir oben aus dem Docker Hub gezogen haben.
sudo docker run centos
Du befindest dich jetzt innerhalb des Containers mit einer Container-ID, in diesem Beispiel ist es 2d80435f0d91. Du solltest eine Eingabeaufforderung sehen, die wie folgt aussieht:
Innerhalb des Containers kannst du jeden Befehl ausführen, ohne sudo zu benutzen, da du ein Root-Benutzer bist. Du kannst zum Beispiel den Befehl dnf update ausführen, um die Pakete im centos-Image zu aktualisieren:
dnf update
Alle Änderungen, die du innerhalb eines Containers vornimmst, wirken sich nur auf diesen Container aus. Du kannst den Container verlassen, indem du exit an der Eingabeaufforderung eingibst.
Fazit
In diesem Lernprogramm hast du gelernt, wie du Docker auf deinem Server installierst und wie du mit Images und Containern arbeitest. Wenn du dich mit diesen grundlegenden Konzepten vertraut gemacht hast, kannst du zu den fortgeschritteneren Themen in der offiziellen Docker-Dokumentation übergehen.