Einführung
Docker ist eine Plattform zum Erstellen und Ausführen von Containern. Container bündeln eine Anwendung zusammen mit den benötigten Dateien und Bibliotheken. Dadurch verhält sich die Anwendung in unterschiedlichen Umgebungen konsistenter.
Ein Container ist nicht dasselbe wie eine vollständige virtuelle Maschine. Er isoliert Prozesse und Dateisystemansichten, verwendet aber weiterhin den Kernel des Hosts. Deshalb starten Container normalerweise schneller und benötigen weniger Ressourcen als virtuelle Maschinen.
Docker wurde populär, weil Entwickler und Betreiber häufig mit demselben Problem konfrontiert waren: Eine Software funktionierte auf einem Rechner, schlug auf einem anderen jedoch fehl, weil sich die Umgebungen unterschieden. Container verringern diese Unterschiede, indem sie die Art und Weise standardisieren, wie eine Anwendung gepackt und gestartet wird.
In diesem Lab führen Sie eine Funktionsprüfung Ihrer Docker-Umgebung durch. Bevor Sie Container produktiv einsetzen, sollten Sie überprüfen, ob die Docker Engine installiert ist, der Client mit ihr kommunizieren kann und das System ein Test-Image erfolgreich ausführt.
Sie führen die folgenden Prüfungen durch:
- Überprüfen Sie die installierte Docker-Version.
- Führen Sie einen Testcontainer aus, um zu bestätigen, dass Ihr System Images herunterladen und ausführen kann.
- Untersuchen Sie den Status des Containers, um seinen Lebenszyklus zu verstehen.
Docker-Version überprüfen
Der erste Schritt bei der Überprüfung Ihrer Docker-Umgebung besteht darin, zu prüfen, ob die Docker-Befehlszeilenschnittstelle (CLI) erreichbar ist. Dadurch bestätigen Sie, dass der Befehl docker im PATH Ihres Systems verfügbar ist.
Diese Prüfung zeigt nur, dass das Client-Programm vorhanden ist. Sie bestätigt noch nicht, dass die Docker Engine im Hintergrund fehlerfrei arbeitet oder Container tatsächlich ausgeführt werden können.
Öffnen Sie Ihr Terminal und führen Sie den folgenden Befehl aus:
docker --version
Beispielausgabe:
Docker version 20.10.21, build 20.10.21-0ubuntu1~22.04.3
Die Ausgabe zeigt die installierte Docker-Version und Informationen zum Build an. Eine angezeigte Versionsnummer bestätigt, dass der Docker-Client erfolgreich installiert ist und Befehle entgegennimmt.
Einen Testcontainer ausführen
Nachdem Sie bestätigt haben, dass der Docker-Client verfügbar ist, überprüfen Sie als Nächstes, ob der Docker Daemon (der Hintergrunddienst zur Verwaltung von Containern) ausgeführt wird und Container starten kann.
Diese Aufteilung in Client und Daemon ist ein zentraler Bestandteil von Docker. Der von Ihnen eingegebene Befehl docker ist der Client. Der Daemon übernimmt die eigentliche Arbeit: Er lädt Images herunter, erstellt Container und verwaltet deren Lebenszyklus.
Für diese Prüfung verwenden Sie das offizielle Image hello-world. Dieses minimale Image wurde speziell zum Testen der Installation entwickelt.
Führen Sie den folgenden Befehl in Ihrem Terminal aus:
sudo docker run hello-world
Warum sudo?
Der Docker Daemon kommuniziert über einen Unix-Socket. Standardmäßig gehört dieser Socket dem Benutzer root. Andere Benutzer können nur mit sudo darauf zugreifen.
Was geschieht bei der Ausführung dieses Befehls?
- Lokal prüfen: Docker prüft, ob das Image
hello-worldauf Ihrem lokalen Rechner vorhanden ist. - Herunterladen: Wenn das Image lokal nicht gefunden wird, lädt Docker es aus der Docker Hub (einer öffentlichen Registry) herunter.
- Ausführen: Docker erstellt aus diesem Image einen neuen Container und führt ihn aus.
Diese Abfolge verdeutlicht außerdem den Unterschied zwischen Image und Container. Ein Image ist eine wiederverwendbare Vorlage, während ein Container eine ausgeführte oder angehaltene Instanz ist, die aus dieser Vorlage erstellt wurde.
Containerausgabe und -status analysieren
In diesem Schritt analysieren Sie die Ausgabe des vorherigen Befehls, um zu bestätigen, dass der Container erfolgreich ausgeführt wurde.
Nach der Ausführung von sudo docker run hello-world sollten Sie eine ähnliche Meldung sehen:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
Diese Meldung bestätigt, dass die gesamte Docker-Pipeline – Client, Daemon, Registry und Container – ordnungsgemäß funktioniert.
Der Container hello-world gibt diese Meldung aus und wird anschließend sofort beendet. Obwohl er nicht mehr ausgeführt wird, existiert der Container weiterhin auf Ihrem System. Sie können dies überprüfen, indem Sie alle Container auflisten, einschließlich der beendeten Container.
Dies ist eine wichtige erste Lektion zum Lebenszyklus von Containern: Ein Container kann im Status „beendet“ weiterhin existieren. Ausgeführt zu werden und zu existieren sind in Docker miteinander verbundene, aber nicht identische Zustände.
Führen Sie den folgenden Befehl aus:
sudo docker ps -a
ps: Listet Container auf.-a(oder--all): Zeigt alle Container an, nicht nur die aktuell ausgeführten.
In der Ausgabe sollte hello-world mit dem Status Exited aufgeführt sein. Das bestätigt, dass der Container erstellt wurde, lief und seine Aufgabe erfolgreich abgeschlossen hat.
Zusammenfassung
In diesem Lab haben Sie Ihre Docker-Installation erfolgreich überprüft. Sie haben gelernt:
- Die Docker-Version zu prüfen, um zu bestätigen, dass das CLI-Tool installiert ist.
- Den Container
hello-worldauszuführen, um die Verbindung zum Docker Daemon und die Fähigkeit zum Herunterladen von Images zu testen. - Die Ausführung des Containers zu überprüfen, indem Sie die Ausgabe untersuchen und den Verlauf der Container auflisten.
Nach Abschluss dieser Prüfungen können Sie davon ausgehen, dass Ihre Umgebung für weiterführende Docker-Operationen bereit ist.



