Docker
Docker Compose - tutoriel complet multi-services
20 min de lecturePublié le 2026-02-05Spectra Consulting
Docker Compose permet de définir et lancer des applications multi-conteneurs avec un simple fichier YAML. Au lieu de taper 10 commandes docker run, un seul docker compose up suffit. Voici le guide complet.
Pourquoi Docker Compose ?
Une application moderne typique a besoin de : un serveur web, une base de données, un cache Redis, peut-être un worker en arrière-plan. Docker Compose orchestre tout ça en un fichier.
Exemple 1 : Stack WordPress
# docker-compose.yml
version: '3.8'
services:
wordpress:
image: wordpress:latest
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_PASSWORD: secret
depends_on:
- db
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: wordpress
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:# Lancer la stack
docker compose up -d
# Voir les logs
docker compose logs -f
# Arrêter tout
docker compose downExemple 2 : App Node.js + Redis + PostgreSQL
version: '3.8'
services:
api:
build: .
ports:
- "3000:3000"
environment:
DATABASE_URL: postgres://user:pass@db:5432/app
REDIS_URL: redis://cache:6379
depends_on:
- db
- cache
volumes:
- .:/app
- /app/node_modules
db:
image: postgres:16-alpine
environment:
POSTGRES_USER: user
POSTGRES_PASSWORD: pass
POSTGRES_DB: app
volumes:
- pgdata:/var/lib/postgresql/data
cache:
image: redis:7-alpine
volumes:
pgdata:Commandes essentielles
docker compose up -d # Lancer en arrière-plan
docker compose down # Arrêter et supprimer
docker compose ps # État des services
docker compose logs -f api # Logs d'un service
docker compose exec api sh # Shell dans un conteneur
docker compose build # Reconstruire les images
docker compose restart api # Redémarrer un serviceBonnes pratiques
- Utilisez des volumes nommés pour persister les données
- Fichier .env pour les variables sensibles (jamais dans le compose.yml)
- depends_on n'attend pas que le service soit "prêt", utilisez des healthchecks
- Profiles pour séparer dev/test :
docker compose --profile debug up
🚀 Pratiquez Docker Compose sur un vrai environnement
Nos labs Docker vous font créer des stacks multi-conteneurs réelles, pas des simulations.
5 labs Docker gratuits →Passez à la pratique
Cet article vous a donné les bases. Maintenant, pratiquez chaque commande sur un vrai terminal avec nos labs interactifs guidés.
Commencer les labs Docker