Definieren Sie Ihre Multi-Container-Anwendung mit Docker-Compose.YML

Definieren Sie Ihre Multi-Container-Anwendung mit Docker-Compose.YML
Docker ist eine beliebte und weit verbreitete Lösung zum Erstellen und Bereitstellen von Projekten. Es bietet wesentliche Komponenten wie Container, Bilder, Registrierung und Docker Compose. Genauer. Es wird auch die YAML-Datei verwendet, um die Multi-Container-App zu konfigurieren.

In diesem Bericht wird zeigen, wie Multi-Container-Anwendungen mit einem “definiert werden könnenDocker-Compose.YML" Datei.

So definieren Sie mehrere Containeranwendungen mit „Docker-Compose.YML -Datei?

Multi-Container-Anwendungen bestehen aus mehreren Diensten, und jeder Dienst muss in einem separaten Container ausgeführt werden. Darüber hinaus umfassen die Definition von Multicontainer-Anwendungen drei grundlegende Schritte:

  • Schritt 1: Erstellen Sie Dockerfile
  • Schritt 2: Konfigurieren von Diensten in “Docker-Compose.YML" Datei
  • Schritt 3: Starten Sie die Behälter

Schritt 1: Erstellen Sie Dockerfile

Erstellen Sie zunächst eine Dockerfile, die auch als Anweisungsdatei bezeichnet wird, die Anweisungen enthält, um das Bild so zu generieren, um die Anwendung zu containieren. Fügen Sie den folgenden Code in “ein“Dockerfile”Um die Golang -Anwendung auf dem Webserver auszuführen:

Von Golang
WorkDir/Go/SRC/App
Main hinzufügen.gehen .
Run Go Build -o -Webserver .
8080 entdecken
CMD ["./Webserver "]

Im obigen Code:

  • AUSDer Befehl ”Definiert das Basisbild für einen Container.
  • WorkdirDer Befehl ”Definiert das Arbeitsverzeichnis für den Container.
  • HINZUFÜGENDer Befehl ”fügt die angegebene Datei dem Containerpfad hinzu.
  • LAUFENDer Befehl ”führt den angegebenen Befehl aus.
  • EXPONIEREN”Wird verwendet.
  • CMD”Gibt den Einstiegspunkt oder die Standardeinstellungen für den Container an. Hier definiert „CMD“ die “./WebserverAusführbarer Punkt:

Notiz: Der Name der Datei muss sein “Dockerfile”, Und fügen Sie keine Erweiterung mit dem Dateinamen bei.

Schritt 2: Konfigurieren Sie Dienste in „Docker-Compose.YML -Datei

Erstellen Sie im nächsten Schritt eine “Docker-Compose.YMLDatei zum Konfigurieren der Multi-Container-Anwendungsdienste. Zum Beispiel haben wir den folgenden Code angegeben:

Version: "Alpine"
Dienstleistungen:
Netz:
bauen: .
Container_Name: Web-Container
privilegiert: wahr
Häfen:
- "8080: 8080/TCP"
Golang:
Bild: "Golang: Alpine"

Nach dem oben bereitgestellten Snippet:

  • Dienstleistungen"Schlüssel definiert zwei Dienste:"Netz" Und "Golang”.
  • Der "Web" -Dienst verwendet einen Aufbau von Dockerfile oder Dockerfile als Basis.
  • Container_Name”Gibt den Namen des Containers an, in dem der" Web "-Dienst ausgeführt wird.
  • privilegiert”Wird verwendet, um die Host -Berechtigungen dem Container zuzuordnen.
  • HafenDefiniert den exponierenden Port für einen Container.
  • Der "Golang"Service verwendet einfach das"Golang: Alpine”Bild als Basisbild:

Schritt 3: Starten Sie die Behälter

Starten Sie nun die in der angegebenen Dienste “Docker-Compose.YMLDatei mithilfe der “Docker-Compose Up" Befehl:

> Docker -compose up -d

Aus der folgenden Ausgabe sehen Sie, dass zwei Dienste in verschiedene Container gestartet werden. Der erste Container führt das aus “Netz”Service des Golang -Programms. Der zweite Container führt das aus “Golang" Service:

Zur Überprüfung navigieren Sie zum angegebenen Port des lokalen Hosts:

Es kann beobachtet werden, dass wir die Multi-Container-App erfolgreich mit der “definiert habenDocker-Compose.YML" Datei.

Abschluss

Um die Anwendung mehrerer Container zu konfigurieren, erstellen Sie zunächst eine einfache Dockerfile -Datei, die als Anweisungsdatei bezeichnet wird. Konfigurieren Sie dann die Anwendungsdienste in eine “Docker-Compose.YML" Datei. Jeder einzelne Dienst wird in einem separaten Container ausgeführt. Danach starten Sie die Behälter mit Hilfe des “Docker-Compose Up" Befehl. Diese Beschreibung hat gezeigt, wie die Multi-Container-Anwendung mit der “konfiguriert werden kannDocker-Compose.YML" Datei.