Docker compose
| Fiche express | |
|---|---|
| Type | Définition et lancement d'applications multi-conteneurs |
| Format | Fichier YAML (compose.yml / docker-compose.yml)
|
| Commande | docker compose (plugin CLI intégré, remplace docker-compose)
|
| Voir aussi | Docker stack · Docker swarm |
Docker Compose permet de décrire, dans un unique fichier YAML, un ensemble de conteneurs, réseaux et volumes formant une application (services, dépendances, ports, variables d'environnement) et de piloter l'ensemble comme une seule unité. Le même fichier peut être exécuté en local avec docker compose (mode standalone, un seul hôte) ou déployé sur un cluster Swarm via docker stack deploy (multi-hôtes) — voir Docker stack pour ce second usage.
Usage courant
Exemple avec une pile Nginx minimale :
git clone <URL_DEPOT_COMPOSE>
cd <REPERTOIRE_PROJET>
docker compose up -d
Suivre l'état des conteneurs de la pile :
docker compose ps
Arrêter et nettoyer la pile (conteneurs, réseaux créés) :
docker compose down
Standalone ou Swarm
| Commande | Portée | Cas d'usage |
|---|---|---|
docker compose up |
Un seul hôte | Développement, environnement de test, petite prod mono-serveur |
docker stack deploy |
Cluster Swarm multi-hôtes | Haute disponibilité, répartition de charge entre nœuds |
Certaines directives du fichier Compose ne sont interprétées qu'en mode stack (par exemple la section deploy: — répliques, contraintes de placement, politique de mise à jour), et sont ignorées silencieusement par docker compose up.
Voir aussi
- Docker stack — déploiement du même fichier sur un cluster Swarm
- Docker swarm — vue d'ensemble du cluster