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:
- Führen Sie einen Docker-Container basierend auf dem Image
docker/getting-startedaus.
Anforderungen
Um diese Challenge abzuschließen, müssen Sie:
- Den Befehl
docker runverwenden, um den Container zu starten. - Das Image
docker/getting-startedverwenden, welches bereits für Sie vorab heruntergeladen wurde. - Den Befehl im Verzeichnis
~/projectausfü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-startedgeöffnet. Wenn SieCtrl+Cdrücken oder das Terminal schließen, wird der Container gestoppt. Öffnen Sie ein zweites Terminal, umdocker psauszuführen, oder verwenden Siedocker 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.



