Docker-Meisterschaft in den Gelasianischen Grasebenen

DockerIntermediate
Jetzt üben

Einführung

Stellen Sie sich vor, Sie befinden sich in den uralten Grasebenen von Gelasian, wo Wildpferde frei umherstreifen und die Bindung zwischen einem Pferdebändiger und den ungezähmten Bestien überlebenswichtig ist. Sie schlüpfen in die Rolle des Wildpferdebändigers, der vor der Herausforderung steht, Docker einzusetzen, um Docker-Container in dieser weiten Landschaft effizient zu verwalten.

Beherrschung der Container-Erstellung

In diesem Schritt erlernen Sie die Grundlagen der Erstellung und Verwaltung von Docker-Containern, um in den wilden Grasebenen zu bestehen.

Aufgaben

  • Erstellen Sie einen Nginx-Container mit dem Namen mynginx und stellen Sie sicher, dass er erfolgreich ausgeführt wird.
  • Starten Sie einen Alpine-Container und überprüfen Sie dessen Status.
  • Stellen Sie einen Ubuntu-Container mit einem spezifischen Volume bereit (mounten Sie das Host-Verzeichnis ~/project in das Container-Verzeichnis /app).

Anforderungen

  • Alle Operationen müssen innerhalb des Verzeichnisses /home/labex/project durchgeführt werden.
  • Verwenden Sie die folgenden Befehle:
    • Zum Erstellen von Containern: docker run
    • Zum Überprüfen des Container-Status: docker ps
    • Zum Einbinden eines Volumes: docker run -v

Beispiel

Nach Abschluss der Aufgaben sollte die Ausgabe von docker ps die laufenden Container anzeigen, einschließlich relevanter Informationen wie Container-ID, Image und Status.

labex:~/ $ docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS     NAMES
1983f85f03d4   ubuntu    "sleep 3600"             22 seconds ago   Up 21 seconds             ubuntu_container
4231996cae33   alpine    "sleep 3600"             2 minutes ago    Up 2 minutes              alpine_container
519eadd3ced5   nginx     "/docker-entrypoint.…"   2 minutes ago    Up 2 minutes    80/tcp    mynginx

Container-Vernetzung und Kommunikation

In diesem Schritt tauchen Sie in die Welt der Container-Netzwerke und Kommunikation ein, um eine nahtlose Konnektivität in den Grasebenen herzustellen.

Aufgaben

  • Erstellen Sie ein benutzerdefiniertes Netzwerk mit dem Namen mynetwork für die Container.
  • Stellen Sie einen Alpine-Container namens myalpine im benutzerdefinierten Netzwerk bereit und stellen Sie sicher, dass er mit einem anderen Container namens mypython (basierend auf dem Python-Image) im selben Netzwerk kommunizieren kann.

Anforderungen

  • Alle Operationen müssen im Verzeichnis /home/labex/project verbleiben.
  • Verwenden Sie die folgenden Befehle:
    • Zum Erstellen eines benutzerdefinierten Netzwerks: docker network create
    • Zum Verbinden von Containern mit einem Netzwerk: docker network connect

Beispiel

Nach Abschluss der Aufgaben sollte das benutzerdefinierte Netzwerk beim Ausführen von docker network ls sichtbar sein, und der Python-Container sollte erfolgreich mit anderen Containern innerhalb des Netzwerks kommunizieren können.

Netzwerk anzeigen:

labex:~/ $ docker network ls
NETWORK ID     NAME        DRIVER    SCOPE
1a367e6cc4e5   bridge      bridge    local
91199fc6ad2e   host        host      local
32e2857073a9   minikube    bridge    local
92d3b71b7efd   mynetwork   bridge    local
1078d2c781b6   none        null      local

Überprüfung der Container-Verbindung mittels ping:

labex:~/ $ docker exec myalpine ping mypython
PING mypython (172.18.0.3): 56 data bytes
64 bytes from 172.18.0.3: seq=0 ttl=64 time=0.153 ms
64 bytes from 172.18.0.3: seq=1 ttl=64 time=0.072 ms
64 bytes from 172.18.0.3: seq=2 ttl=64 time=0.069 ms

Zusammenfassung

In dieser Herausforderung haben Sie die Rolle eines Wildpferdebändigers in den uralten Grasebenen übernommen und die Kunst der Verwaltung von Docker-Containern gemeistert. Durch das Abschließen der Aufgaben und das Verständnis der Lösungen haben Sie grundlegende Fähigkeiten im Docker-Container-Management und in der Vernetzung erworben – essenziell, um in der ungezähmten Welt von Docker zu bestehen.

✨ Lösung prüfen und üben✨ Lösung prüfen und üben