Déployer des services sur Swarm
Déployez et mettez à l’échelle des applications conteneurisées sous forme de services sur votre cluster Swarm, en gérant leur cycle de vie.
Déployer des services sur Swarm est une leçon Docker & DevOps Fundamentals gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Docker & DevOps Fundamentals, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Docker & DevOps Fundamentals comprend 4 leçons au total.
Qu’est-ce qu’un service Docker Swarm ?
Dans Docker Swarm, un service définit la manière dont vous souhaitez exécuter une application conteneurisée sur l’ensemble de votre cluster.
Au lieu d’exécuter des conteneurs individuels, vous définissez un service pour indiquer à Swarm : « Je veux exécuter X instances de cette image, sur ces ports et avec ces paramètres. »
Swarm veille ensuite au maintien de l’état souhaité et redémarre automatiquement les conteneurs en cas de défaillance.

Services ou conteneurs
Voyez les choses ainsi :
- Un conteneur est une instance unique d’une application.
- Un service est un modèle permettant d’exécuter un ou plusieurs conteneurs identiques (appelés tâches) sur votre Swarm.
Les services assurent une haute disponibilité et une bonne évolutivité en répartissant les tâches et en gérant automatiquement les défaillances.
Déployer votre premier service
La commande docker service create permet de déployer des applications sous forme de services dans votre cluster Swarm. Créons un service de serveur web Nginx simple.
Essayez d’exécuter cet exemple :
docker service create \
--name my-web-app \
-p 80:80 \
--replicas 1 \
nginxComprendre la création d’un service
Décomposons la commande que nous venons d’utiliser :
--name my-web-app: attribue à votre service un nom facile à retenir.-p 80:80: associe le port 80 des nœuds Swarm au port 80 à l’intérieur du conteneur.--replicas 1: indique à Swarm de maintenir une instance (tâche) active de ce service.nginx: indique l’image Docker à utiliser pour les tâches du service.
Inspecter vos services
Après avoir créé un service, vous voudrez vérifier son état et voir ses tâches en cours d’exécution. Utilisez ces commandes :
docker service ls: répertorie tous les services de votre Swarm.docker service ps <service_name>: affiche les tâches individuelles (conteneurs) associées à un service.
docker service ls
docker service ps my-web-appAugmenter la capacité de votre service
L’un des principaux avantages de Docker Swarm est la simplicité de la mise à l’échelle. Vous pouvez augmenter le nombre d’instances en cours d’exécution (réplicas) de votre service avec une seule commande.
Faisons passer my-web-app à trois réplicas :
docker service scale my-web-app=3Réduire la capacité de votre service
Tout aussi simplement, vous pouvez réduire la capacité de votre service pour diminuer l’utilisation des ressources ou gérer le trafic. Swarm arrêtera progressivement les conteneurs excédentaires tout en laissant les autres s’exécuter.
Ram ramenons my-web-app à un seul réplica :
docker service scale my-web-app=1Mettre à jour un service
Lorsque vous devez déployer une nouvelle version de votre application ou modifier les paramètres d’un service, docker service update effectue une mise à jour progressive. Swarm met à jour les tâches une par une afin que votre application reste disponible.
Mettons à jour notre service Nginx vers une version précise :
docker service update --image nginx:1.25 my-web-appSupprimer un service
Lorsqu’un service n’est plus nécessaire, vous pouvez le supprimer de votre Swarm. Cela arrêtera toutes les tâches associées et supprimera la définition du service du cluster.
Pour supprimer notre service d’application web d’exemple :
docker service rm my-web-appQuiz sur la gestion des services
Vous avez un service nommé my-backend qui s’exécute avec 3 réplicas et utilise l’image my-backend:v1. Vous devez le mettre à jour pour utiliser une nouvelle image, my-backend:v2, et augmenter également le nombre de ses réplicas à 5.
Récapitulatif : services Swarm
Excellent travail ! Vous avez appris les notions essentielles pour déployer et gérer des applications sous forme de services dans Docker Swarm.
- Les services définissent l’état souhaité de vos applications conteneurisées.
- Vous avez appris à créer des services avec
docker service create. - Nous avons vu comment inspecter, mettre à l’échelle (
docker service scale) et mettre à jour (docker service update) les services. - Enfin, vous pouvez supprimer des services avec
docker service rm.
Les services sont essentiels pour créer des applications évolutives et résilientes dans un cluster Swarm !
Questions Fréquemment Posées
La leçon « Déployer des services sur Swarm » est-elle gratuite ?
Oui — le texte complet de « Déployer des services sur Swarm » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Docker & DevOps Fundamentals, passe à CoddyKit PRO. Le cours Docker & DevOps Fundamentals comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Déployer des services sur Swarm » ?
Déployez et mettez à l’échelle des applications conteneurisées sous forme de services sur votre cluster Swarm, en gérant leur cycle de vie. Tu pratiques Docker & DevOps Fundamentals avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Docker & DevOps Fundamentals ?
Aucune expérience préalable n'est requise. Docker & DevOps Fundamentals sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Déployer des services sur Swarm » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Docker & DevOps Fundamentals ?
Oui. Chaque leçon Docker & DevOps Fundamentals inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Introduction à Docker Swarm
- Configurer un cluster Swarm
- Déployer des services sur Swarm
- Mise à l’échelle et mises à jour progressives dans Swarm