Erstellung und Ausführung eines 'Hello World' Docker-Containers

DockerDockerBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Docker ist eine leistungsstarke Containerisierungsplattform, die die Art und Weise, wie Entwickler Anwendungen erstellen, bereitstellen und verwalten, revolutioniert hat. In diesem Tutorial führen wir Sie durch den Prozess der Erstellung und Ausführung eines einfachen "Hello World"-Docker-Containers, der ein großartiger Ausgangspunkt zum Erlernen von Docker ist.

Einführung in Docker

Docker ist eine beliebte Open-Source-Plattform, die Entwicklern ermöglicht, Anwendungen in einer containerisierten Umgebung zu erstellen, bereitzustellen und auszuführen. Container sind leichte, eigenständige und ausführbare Softwarepakete, die alles enthalten, was zum Ausführen einer Anwendung benötigt wird, wie z. B. den Code, die Laufzeitumgebung, Systemtools und Bibliotheken.

Was ist Docker?

Docker ist ein Werkzeug, das die Erstellung, Bereitstellung und Ausführung von Anwendungen mithilfe von Containern vereinfacht. Container ermöglichen es einem Entwickler, eine Anwendung mit allen benötigten Komponenten wie Bibliotheken und anderen Abhängigkeiten zu verpacken und als ein Paket auszuliefern.

Docker-Architektur

Die Docker-Architektur besteht aus folgenden Hauptkomponenten:

graph TD A[Docker Client] --> B[Docker Daemon] B --> C[Docker Images] B --> D[Docker Containers] B --> E[Docker Registries]
  • Docker Client: Die Benutzeroberfläche zur Interaktion mit dem Docker-System.
  • Docker Daemon: Der Hintergrundprozess, der Docker-Objekte wie Images, Container, Netzwerke und Volumes verwaltet.
  • Docker Images: Blaupausen zur Erstellung von Docker-Containern.
  • Docker Containers: Ausführbare Instanzen von Docker-Images.
  • Docker Registries: Repositories zum Speichern und Verteilen von Docker-Images.

Vorteile der Verwendung von Docker

  • Konsistenz: Docker stellt sicher, dass Anwendungen unabhängig von der zugrunde liegenden Infrastruktur auf dieselbe Weise ausgeführt werden.
  • Skalierbarkeit: Docker-Container lassen sich leicht an die Ressourcenanforderungen der Anwendung skalieren.
  • Portabilität: Docker-Container können auf jedem Computer mit installiertem Docker ausgeführt werden, unabhängig vom zugrunde liegenden Betriebssystem.
  • Effizienz: Docker-Container sind leichtgewichtig und verbrauchen im Vergleich zu traditionellen virtuellen Maschinen weniger Ressourcen.

Erste Schritte mit Docker

Um mit Docker zu beginnen, müssen Sie die Docker Engine auf Ihrem System installieren. Sie können Docker von der offiziellen Docker-Website (https://www.docker.com/get-started) herunterladen und installieren. Nach der Installation können Sie Docker verwenden, um Ihre Anwendungen zu erstellen und auszuführen.

Erstellen eines "Hello World" Docker-Containers

In diesem Abschnitt lernen wir, wie man einen einfachen "Hello World" Docker-Container erstellt.

Erstellen einer Dockerfile

Eine Dockerfile ist eine Textdatei, die die Anweisungen zum Erstellen eines Docker-Images enthält. Erstellen wir eine einfache Dockerfile:

## Verwenden Sie das offizielle Ubuntu 22.04 Image als Basis-Image
FROM ubuntu:22.04

## Legen Sie das Arbeitsverzeichnis auf /app fest
WORKDIR /app

## Kopieren Sie das Skript "hello.sh" in den Container
COPY hello.sh .

## Machen Sie das Skript ausführbar
RUN chmod +x hello.sh

## Definieren Sie den Befehl zum Ausführen des Skripts beim Starten des Containers
CMD ["./hello.sh"]

In dieser Dockerfile:

  1. Verwenden wir das offizielle Ubuntu 22.04 Image als Basis-Image.
  2. Legen wir das Arbeitsverzeichnis auf /app fest.
  3. Kopieren wir das Skript "hello.sh" in den Container.
  4. Machen wir das Skript ausführbar.
  5. Definieren wir den Befehl zum Ausführen des Skripts beim Starten des Containers.

Erstellen des Docker-Images

Um das Docker-Image zu erstellen, führen Sie den folgenden Befehl im selben Verzeichnis wie die Dockerfile aus:

docker build -t hello-world .

Dieser Befehl erstellt das Docker-Image mit dem Tag "hello-world".

Überprüfen des Images

Sie können alle Docker-Images auf Ihrem System auflisten, indem Sie den folgenden Befehl ausführen:

docker images

Sie sollten das Image "hello-world" in der Liste sehen.

Ausführen und Erkunden des "Hello World" Containers

Nachdem wir nun das "hello-world" Docker-Image erstellt haben, lassen Sie uns den Container ausführen und erkunden.

Ausführen des Containers

Um den "hello-world" Container auszuführen, verwenden Sie den folgenden Befehl:

docker run hello-world

Dieser Befehl startet den Container und führt den im Dockerfile definierten Befehl aus (d.h. das Skript "hello.sh").

Sie sollten die Ausgabe sehen:

Hello, LabEx!

Erkunden des Containers

Sie können den laufenden Container mit verschiedenen Docker-Befehlen erkunden:

  1. Liste der laufenden Container:

    docker ps

    Dies zeigt die laufenden Container auf Ihrem System an.

  2. Inspektion des Containers:

    docker inspect hello-world

    Dies liefert detaillierte Informationen über den Container, wie z. B. seine Konfiguration, Netzwerkeinstellungen und mehr.

  3. Anzeige der Container-Logs:

    docker logs hello-world

    Dies zeigt die Ausgabe des Skripts "hello.sh" an, das im Container ausgeführt wurde.

  4. Ausführen eines Befehls im laufenden Container:

    docker exec -it hello-world /bin/bash

    Dies startet eine interaktive Sitzung innerhalb des laufenden Containers, sodass Sie das Dateisystem des Containers erkunden und weitere Befehle ausführen können.

Beenden und Löschen des Containers

Um den laufenden Container zu stoppen, verwenden Sie den folgenden Befehl:

docker stop hello-world

Um den Container zu löschen, verwenden Sie den folgenden Befehl:

docker rm hello-world

Dies beendet und löscht den "hello-world" Container von Ihrem System.

Zusammenfassung

In diesem Tutorial haben Sie gelernt, wie man einen 'Hello World' Docker-Container erstellt und ausführt. Mit dem Verständnis der grundlegenden Konzepte von Docker-Containern haben Sie den ersten Schritt zur Beherrschung dieser leistungsstarken Technologie gemacht. Docker ermöglicht es Ihnen, Ihre Anwendungen und ihre Abhängigkeiten in portable, selbstkonsistente Einheiten zu verpacken, was die Entwicklung, Bereitstellung und Verwaltung Ihrer Software in verschiedenen Umgebungen vereinfacht. Mit den in diesem Tutorial erworbenen Kenntnissen können Sie nun weiterführende Docker-Konzepte erkunden und beginnen, Ihre eigenen containerisierten Anwendungen zu erstellen.