Docker stack
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Type | Déploiement d'une pile multi-services sur Swarm |
| Entrée | Fichier au format Compose |
| Portée | À exécuter sur un manager |
| Voir aussi | Docker compose · Docker swarm · Docker service |
docker stack est la commande qui fait le pont entre un fichier Docker Compose et un cluster Swarm : elle déploie l'ensemble des services décrits dans le fichier comme une seule unité logique (une « stack »), chaque service Compose devenant un service Swarm nommé <stack>_<service>.
Référence officielle : https://docs.docker.com/engine/swarm/stack-deploy/
Déployer une stack
git clone <URL_DEPOT_COMPOSE>
cd <REPERTOIRE_PROJET>
vi ma-stack.yml
docker stack deploy -c ma-stack.yml exemple
Inspecter une stack
docker stack ls
docker stack ps exemple
docker stack services exemple
docker service logs exemple_busybox
Mettre à jour une stack
Il n'existe pas de sous-commande update dédiée : on relance simplement la même commande de déploiement, Swarm calcule le différentiel et applique une mise à jour progressive (rolling update) service par service :
docker stack deploy -c ma-stack.yml exemple
Supprimer une stack
docker stack rm exemple
Toutes les ressources associées (services, réseaux dédiés) sont supprimées ; les volumes nommés sont conservés par défaut, sauf suppression explicite.
Voir aussi
- Docker compose — syntaxe du fichier de définition
- Docker swarm — vue d'ensemble du cluster
- Docker service — objets créés par une stack