Docker Bootcamp – Utiliser Docker Compose

Bienvenue à Docker Bootcamp. Dans cet article, nous examinerons Docker Compose pour configurer et exécuter plusieurs conteneurs dépendants.
En repensant à mon premier article sur la liaison de conteneurs, nous avons utilisé la commande Docker run avec un texte de variables d'environnement fichier pour démarrer deux conteneurs. Il était important de démarrer le conteneur de base de données avant le conteneur CMS. Nous allons accomplir la même chose ici en utilisant Docker Compose.
Ne vous inquiétez pas de la structure du fichier docker-compose dans l'exemple. La plupart vous sembleront familiers si vous avez suivi, mais nous ne nous concentrerons pas sur l'écriture du fichier de composition.
Commandes
- compose – Sous-commande Docker pour gérer les applications multi-conteneurs
- compose down – Arrêter et supprimer les conteneurs et les réseaux
- composer start – Démarrer les conteneurs
- composer stop – Arrêter les conteneurs
- composer up – Créer et démarrer les conteneurs
Commande Détails
Vous pouvez trouver une liste complète des commandes et tous les indicateurs disponibles sur https://docs.docker.com/engine/reference/commandline/docker/.
compose[19659013]docker compose [options] [command]
–file | -f | O | Fichier de configuration (par défaut ./docker-compose.yml) |
–project-name | -p | O | Nom du projet (par défaut le nom du répertoire) |
- Avant Docker Desktop v3.3.2 (2021-05-03), docker compose était une commande distincte docker- compose
- La nouvelle sous-commande compose remplace la commande docker-compose
- La sous-commande compose améliore la commande docker-compose en affichant des informations d'état utiles telles que l'état du conteneur et le temps d'exécution
compose down[19659013] docker compose [options] vers le bas
compose start
docker compose [options] start
composer arrêter
docker composer [options] arrêter
compose up
docker compose [options] up [up-options]
–detach | -d | O | Exécuter des conteneurs en arrière-plan |
Examples
Setup
- Créer un fichier nommé "docker-compose.yml"
- Copiez et collez le texte suivant
version : '2.4' prestations de service: mysqldb : image : mysql environnement: MYSQL_ROOT_PASSWORD : SecretRootPassword0987 MYSQL_DATABASE : WordPress MYSQL_USER : wpress MYSQL_PASSWORD : Wordpr3ss ! wordpresscms : image : wordpress ports : - "8080:80" environnement: WORDPRESS_DB_HOST : mysqldb WORDPRESS_DB_USER : wpress WORDPRESS_DB_PASSWORD : Wordpr3ss ! WORDPRESS_DB_NAME : WordPress dépend de: - mysqldb réseaux : défaut: nom : wp |
Utiliser Docker Compose
- Créer, démarrer et exécuter plusieurs conteneurs
- docker compose -f .docker-compose.yml -p wp up -d
- Remarquez qu'il crée un nouveau réseau défini par l'utilisateur nommé wp
- Remarquez que les noms des conteneurs sont préfixés par le nom du projet et suivis d'un numéro
- Assurez-vous d'utiliser ce nom lors de l'interaction avec les conteneurs
- Le préfixe permet de regrouper les conteneurs
- Le suffixe aide lors de la mise à l'échelle des applications vers plusieurs conteneurs
- docker compose -f .docker-compose.yml -p wp up -d
- Afficher les processus de conteneur
- docker ps -a
- Remarquez que les deux conteneurs sont en cours d'exécution
- docker ps -a
- Voir le site wordpress
- Parcourir jusqu'à localhost:8080
- Notez que le programme d'installation de wordpress se charge
- Terminez le programme d'installation
- Parcourir jusqu'à localhost:8080
- Voir le site wordpress
- Arrêter l'exécution des conteneurs
- docker compose -f .docker-compose.yml -p wp stop
- Afficher les processus de conteneur
- docker ps -a
- Remarquez que les deux conteneurs sont sortis
- docker ps -a
- Voir le site wordpress
- Parcourir jusqu'à localhost:8080
- Remarquez que la page est introuvable
- Parcourir jusqu'à localhost:8080
- Démarrer plusieurs conteneurs de composition existants
- docker compose -f .docker-compose.yml -p wp start
- Afficher les processus de conteneur
- docker ps -a
- Remarquez que les deux conteneurs sont en cours d'exécution
- docker ps -a
- Voir le site wordpress
- Arrêter et supprimer les conteneurs en cours d'exécution
- docker compose -f .docker-compose.yml -p wp down
- Afficher les processus de conteneur
- docker ps -a
- Avis qu'aucun conteneur n'est répertorié
- docker ps -a
- Créer, démarrer et exécuter plusieurs conteneurs
- docker compose -f .docker-compose.yml -p wp up -d
- Afficher les processus de conteneur
- docker ps -a
- Remarquez que les deux conteneurs sont en cours d'exécution
- docker ps -a
- Voir le site wordpress
- Parcourir jusqu'à localhost:8080
- Remarquez que le programme d'installation de wordpress se charge
- Les nouveaux conteneurs sont recréés à partir de l'image et les données précédentes sont perdues.
- Remarquez que le programme d'installation de wordpress se charge
- Parcourir jusqu'à localhost:8080
Docker Compose est un moyen simple de créer, démarrer, arrêter et supprimer plusieurs conteneurs dépendants. Cela permet d'éviter les erreurs de démarrage lors de la saisie manuelle de commandes. Cela garantit que tous les membres de votre équipe démarrent leurs conteneurs de la même manière.
Vous pouvez également en savoir plus sur docs.docker.com.
Source link