Android

Wie installiere und verwende ich Docker Compose unter Debian 10 Linux?

Warum Container? Einführung in Docker | Docker-Tutorial 1/6

Warum Container? Einführung in Docker | Docker-Tutorial 1/6

Inhaltsverzeichnis:

Anonim

Docker ist eine Containerisierungsplattform, mit der Sie schnell Anwendungen als tragbare, autarke Container erstellen, testen und bereitstellen können, die praktisch überall ausgeführt werden können.

Docker Compose ist ein Tool, mit dem Sie Docker-Anwendungen für mehrere Container definieren und orchestrieren können. Es verwendet eine YAML-Datei, um die Container, Netzwerke und Volumes der Anwendung zu konfigurieren.

Verfassen kann für verschiedene Zwecke verwendet werden. Bereitstellung von Einzelhostanwendungen, automatisierte Tests und lokale Entwicklung sind die beliebtesten Anwendungsfälle für Docker Compose.

In diesem Tutorial wird erklärt, wie die neueste Version von Docker Compose unter Debian 10, Buster, installiert wird. Wir werden auch die grundlegenden Konzepte und Befehle von Docker Compose untersuchen.

Voraussetzungen

Bevor Sie fortfahren, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllt haben:

  • Als Benutzer mit sudo-Rechten angemeldet. Sie haben Docker auf Ihrem Debian 10-Rechner installiert.

Docker Compose unter Debian 10 installieren

Das Docker Compose-Installationspaket ist in den offiziellen Debian 10-Repositories verfügbar, es ist jedoch möglicherweise nicht immer die neueste Version. Der empfohlene Ansatz ist die Installation von Docker Compose aus dem GitHub-Repository von Docker.

Zum Zeitpunkt der Erstellung dieses Artikels ist die neueste stabile Version von Docker Compose Version 1.23.1 . Besuchen Sie vor dem Herunterladen der Compose-Binärdatei die Compose-Repository-Release-Seite von GitHub und prüfen Sie, ob eine neue Version zum Herunterladen verfügbar ist.

Gehen Sie folgendermaßen vor, um die neueste Version von Docker Compose unter Debian 10 zu installieren:

  1. Laden Sie die Docker Compose-Binärdatei mit wget oder curl in das Verzeichnis /usr/local/bin herunter:

    sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

    Verwenden Sie chmod , um die Compose-Binärdatei ausführbar zu machen:

    sudo chmod +x /usr/local/bin/docker-compose

    Verwenden Sie zum Überprüfen der Installation den folgenden Befehl, mit dem die Compose-Version gedruckt wird:

    docker-compose --version

    Die Ausgabe sieht ungefähr so ​​aus:

    docker-compose version 1.23.1, build b02f1306

Erste Schritte mit Docker Compose

In diesem Abschnitt wird gezeigt, wie Sie mit Docker Compose eine lokale WordPress-Entwicklungsumgebung einrichten.

Erstellen Sie ein Verzeichnis für das Projekt und navigieren Sie dorthin:

mkdir wordpress_app && cd wordpress_app

Öffnen Sie Ihren Texteditor und erstellen Sie eine Datei mit dem Namen docker-compose.yml :

nano docker-compose.yml

Fügen Sie den folgenden Inhalt ein:

docker-compose.yml

version: '3.7' services: db: image: mysql:8.0 command: --default-authentication-plugin=mysql_native_password restart: always volumes: - db_data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: wordpress wordpress: image: wordpress restart: always volumes: -./wp_data:/var/www/html ports: - "8080:80" environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_NAME: wordpress WORDPRESS_DB_USER: root WORDPRESS_DB_PASSWORD: password depends_on: - db volumes: db_data: wp_data:

Lassen Sie uns den Code Zeile für Zeile erklären

Die erste Zeile gibt die Compose-Dateiversion an. Es gibt verschiedene Versionen des Compose-Dateiformats mit Unterstützung für bestimmte Docker-Versionen.

Als nächstes definieren wir zwei Dienste, db und wordpress . Jeder Dienst erstellt einen separaten Container, wenn Docker Compose ausgeführt wird.

Der db service:

  • Das Bild ist auf mysql:8.0 . Wenn das Image nicht vorhanden ist, wird es von Compose aus dem öffentlichen Docker Hub-Repository abgerufen. Die Zeile, die mit dem command beginnt, überschreibt den Standardbefehl. Die Richtlinie restart restart: always weist Compose an, den Container neu zu starten, wenn er ausfällt. Der Container verwendet ein benanntes Volume db_data um die Datenbank zu db_data die Umgebungsvariablen für das mysql:8.0 Image.

Der wordpress Service:

  • Verwendet das wordpress Image. wp_data Verzeichnis wp_data auf dem Host in /var/lib/mysql im Container ein. Leitet den freigelegten Port 80 des Containers an Port 8080 auf dem Host-Computer weiter. Definiert die Umgebungsvariablen für das wordpress depends_on Befehl definiert die Abhängigkeit zwischen den beiden Diensten. In diesem Beispiel wird db vor wordpress gestartet.

Starten Sie aus dem Projektverzeichnis den WordPress-Stapel, indem Sie den folgenden Befehl ausführen:

docker-compose up

Die Ausgabe sollte ungefähr so ​​aussehen:

…] /usr/sbin/mysqld: ready for connections. Version: '8.0.18' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL. db_1_99946702ac7e | 2019-12-15T21:37:29.109255Z 0 X Plugin ready for connections. Socket: '/var/run/mysqld/mysqlx.sock' bind-address: '::' port: 33060…

Docker Compose wp_data die Bilder ab, startet die Container und erstellt das Verzeichnis wp_data in Ihrem Projektverzeichnis.

Geben Sie http://0.0.0.0:8080/ in Ihren Browser ein und Sie sehen den Standard-WordPress-Installationsbildschirm.

Zu diesem Zeitpunkt ist die WordPress-Anwendung aktiv und Sie können mit der Arbeit beginnen.

Um das Verfassen zu stoppen, drücken Sie CTRL+C

Sie können das Verfassen auch in einem getrennten Modus starten, indem Sie die Option -d :

docker-compose up -d

Verwenden Sie den folgenden Befehl, um die ausgeführten Docker-Container anzuzeigen:

docker-compose ps

Name Command State Ports ------------------------------------------------------------------------------------------------------ wordpress_app_db_1_99946702ac7e docker-entrypoint.sh --def… Up 3306/tcp, 33060/tcp wordpress_app_wordpress_1_a428d8408817 docker-entrypoint.sh apach… Up 0.0.0.0:8080->80/tcp

Verwenden Sie Folgendes, um die Dienste zu beenden, wenn Compose im getrennten Modus ausgeführt wird:

docker-compose stop

docker-compose down

Durch --volumes Schalters --volumes werden auch die Datenvolumes entfernt:

docker-compose down --volumes

Docker Compose deinstallieren

sudo rm /usr/local/bin/docker-compose

Fazit

Um Docker Compose unter Debian 10 zu installieren, laden Sie einfach die Binärdatei in ein Verzeichnis im Systempfad herunter und machen Sie sie ausführbar.

Docker Debian