Führen Sie Ihren ersten Container aus

DockerBeginner
Jetzt üben

Einführung

Willkommen zur Challenge „Führen Sie Ihren ersten Container aus“! Sie haben bereits gelernt, wie man den hello-world-Container startet. Gehen wir nun einen Schritt weiter und führen einen anderen Container aus. In dieser Aufgabe nutzen Sie Ihre Docker-Kenntnisse, um das Image docker/getting-started zu starten, das einen kleinen Webserver innerhalb eines Containers ausführt.

Einen neuen Container ausführen

Aufgaben

Ihre Aufgabe ist einfach:

  1. Führen Sie einen Docker-Container basierend auf dem Image docker/getting-started aus.

Anforderungen

Um diese Challenge abzuschließen, müssen Sie:

  1. Den Befehl docker run verwenden, um den Container zu starten.
  2. Das Image docker/getting-started verwenden, welches bereits für Sie vorab heruntergeladen wurde.
  3. Den Befehl im Verzeichnis ~/project ausführen.

Beispiel

Wenn Sie den Container erfolgreich starten, führt Docker ihn im Vordergrund aus, sodass Ihr Terminal mit den Container-Logs verbunden bleibt. Diese Logs stammen vom Nginx-Webserver innerhalb von docker/getting-started.

Machen Sie sich keine Sorgen, wenn Sie eine Warnmeldung sehen, dass das Verzeichnis /docker-entrypoint.d/ nicht leer ist.

/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2024/10/29 09:26:17 [notice] 1#1: using the "epoll" event method
2024/10/29 09:26:17 [notice] 1#1: nginx/1.23.3
2024/10/29 09:26:17 [notice] 1#1: built by gcc 12.2.1 20220924 (Alpine 12.2.1_git20220924-r4)
2024/10/29 09:26:17 [notice] 1#1: OS: Linux 5.15.0-56-generic
2024/10/29 09:26:17 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2024/10/29 09:26:17 [notice] 1#1: start worker processes
2024/10/29 09:26:17 [notice] 1#1: start worker process 31
2024/10/29 09:26:17 [notice] 1#1: start worker process 32

Sie können ein neues Terminalfenster öffnen, um mit dem Befehl docker ps zu überprüfen, ob der Container läuft.

docker ps
CONTAINER ID   IMAGE               COMMAND                  CREATED          STATUS          PORTS     NAMES
f3f3b3b3b3b3   docker/getting-started   "/docker-entrypoint.…"   1 minute ago   Up 1 minute   80/tcp   festive_mendel

Hinweis: Lassen Sie das erste Terminal nach dem Ausführen von docker run docker/getting-started geöffnet. Wenn Sie Ctrl+C drücken oder das Terminal schließen, wird der Container gestoppt. Öffnen Sie ein zweites Terminal, um docker ps auszuführen, oder verwenden Sie docker run -d docker/getting-started, wenn der Container im Hintergrund laufen soll.

Zusammenfassung

In dieser Challenge haben Sie Ihre Docker-Kenntnisse erweitert, indem Sie einen neuen Container ausgeführt haben. Sie haben den Befehl docker run verwendet, um das Image docker/getting-started zu starten, das einen Webserver in einem Container ausführt und dessen Start-Logs im Terminal ausgibt. Sie haben zudem gesehen, dass ein im Vordergrund gestarteter Container das Terminal belegt, bis Sie ihn stoppen. Diese Übung festigt die Grundlagen des Startens von Containern und der Überprüfung ihres Status mit Docker-Befehlen wie docker ps.

✨ Lösung prüfen und üben