# Docker Swarm Cheatsheet ## 🐳 Initialisation & Gestion du Swarm | Commande | Description | |----------|-------------| | `docker swarm init --advertise-addr ` | Initialiser un swarm (manager) | | `docker swarm join --token :` | Joindre un nœud au swarm | | `docker swarm leave` | Quitter le swarm (nœud worker) | | `docker swarm leave --force` | Forcer un manager à quitter le swarm | | `docker swarm update --autolock=true` | Activer le verrouillage automatique du swarm | ## 🔑 Tokens de Joins | Commande | Description | |----------|-------------| | `docker swarm join-token worker` | Afficher le token pour ajouter un worker | | `docker swarm join-token manager` | Afficher le token pour ajouter un manager | ## 📋 Gestion des Nœuds | Commande | Description | |----------|-------------| | `docker node ls` | Lister tous les nœuds du swarm | | `docker node inspect ` | Inspecter un nœud | | `docker node promote ` | Promouvoir un nœud en manager | | `docker node demote ` | Rétrograder un manager en worker | | `docker node update --availability drain ` | Mettre un nœud en mode "drain" | | `docker node rm ` | Supprimer un nœud du swarm | ## 🚀 Gestion des Services | Commande | Description | |----------|-------------| | `docker service create --name ` | Créer un service | | `docker service ls` | Lister les services | | `docker service ps ` | Voir les tâches d'un service | | `docker service inspect ` | Inspecter un service | | `docker service scale =` | Modifier le nombre de réplicas | | `docker service update --image ` | Mettre à jour l'image d'un service | | `docker service logs -f ` | Afficher les logs d'un service | | `docker service rm ` | Supprimer un service | | `docker service update --rollback ` | Rollback d'une mise à jour | ### Options courantes pour `service create/update`: - `--replicas ` : Nombre de réplicas - `--publish :` : Exposer un port - `--mount type=...,source=...,target=...` : Monter un volume - `--env =` | Définir une variable d'environnement - `--constraint node.role==worker` : Contraintes de déploiement ## 📦 Gestion des Stacks (Docker Compose) | Commande | Description | |----------|-------------| | `docker stack deploy -c docker-compose.yml ` | Déployer une stack | | `docker stack ls` | Lister les stacks | | `docker stack services ` | Lister les services d'une stack | | `docker stack rm ` | Supprimer une stack | ## 🌐 Réseaux dans Swarm | Commande | Description | |----------|-------------| | `docker network create --driver overlay ` | Créer un réseau overlay | | `docker network ls` | Lister les réseaux | | `docker network inspect ` | Inspecter un réseau | | `docker network rm ` | Supprimer un réseau | ## 🔐 Secrets & Configs | Commande | Description | |----------|-------------| | `docker secret create ` | Créer un secret depuis un fichier | | `echo "" | docker secret create -` | Créer un secret depuis stdin | | `docker secret ls` | Lister les secrets | | `docker secret inspect ` | Inspecter un secret | | `docker config create ` | Créer une configuration | ## 🔄 Utilitaires | Commande | Description | |----------|-------------| | `docker version` | Vérifier la version de Docker | | `docker info` | Afficher les infos système | | `docker stats` | Monitorer les ressources en temps réel |