Déployer avec Docker Compose
Docker Compose c'est le gars à qui vous faites appel lorsque votre application a plusieurs composantes qui sont déployées dans différents conteneurs. Pour des questions d'organisation et pour faciliter la maintenance l'utiulisation de Docker Compose est vivement recommandée.
Docker Compose est un outil qui permet de gérer plusieurs conteneurs.
Motivations
Les applications modernes sont de plus en plus complexes et sont organisées en plusieurs composantes plus ou moins indépendantes. Prenons l'exemple d'un site de e-commerce, elle a trois composantes, le backend, le frontend et la base de données. Chacune de ces composantes est déployée dans un conteneur Docker.
docker-compose.yaml
docker-compose.yaml est une sorte de fichier de configuration semblable au Dockerfile. Il décrit le comportement des différents conteneurs ainsi que les pinteractions entres ces derniers.
version: '3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data: {}
Déployer les conteneurs
Pour déployer les conteneurs, placez vous dans le dossier que le fichier docker-compose.yaml
et exécutez la commande suivante
-d
pour --detach
fonctionne de la même manière qu'avec docker run
, cela permet de lancer en arrière-plan.
Arrêter les conteneurs
Pour arrêter les conteneurs, il faut exécuter la commande suivante
L'ensemble des conteneurs est arrêté.