Démarrer un service spécifique défini dans le fichier compose
Dans l'étape précédente, nous avons démarré tous les services définis dans notre fichier docker-compose.yml
en utilisant docker-compose up
. Dans cette étape, nous allons apprendre comment démarrer un service spécifique lorsque vous avez plusieurs services définis dans votre fichier Compose.
Bien que notre fichier docker-compose.yml
actuel ne contienne qu'un seul service (web
), la commande pour démarrer un service spécifique est utile lorsque vous avez une application plus complexe avec plusieurs services (comme un serveur web, une base de données et une API backend).
D'abord, arrêtons le service actuellement en cours d'exécution. Nous pouvons le faire en utilisant la commande docker-compose down
. Cette commande arrête et supprime les conteneurs, réseaux et volumes créés par up
.
Assurez-vous d'être dans le répertoire ~/project/my-compose-app
.
cd ~/project/my-compose-app
Maintenant, exécutez la commande docker-compose down
.
docker-compose down
Vous verrez une sortie indiquant que le conteneur et le réseau sont en cours d'arrêt et de suppression.
Stopping my-compose-app_web_1 ... done
Removing my-compose-app_web_1 ... done
Removing network my-compose-app_default
Vous pouvez vérifier que le conteneur est arrêté en exécutant docker ps
. Il ne devrait y avoir aucun conteneur en cours d'exécution provenant de notre fichier compose.
docker ps
Maintenant, démontrons comment démarrer un service spécifique. La commande est docker-compose up <nom_du_service>
. Dans notre cas, le nom du service est web
. Nous utiliserons à nouveau le flag -d
pour l'exécuter en mode détaché.
docker-compose up -d web
Cette commande ne démarrera que le service web
tel que défini dans le fichier docker-compose.yml
. Comme l'image a déjà été téléchargée lors de l'étape précédente, elle créera et démarrera directement le conteneur.
Vous verrez une sortie similaire à ceci :
Creating my-compose-app_web_1 ... done
À nouveau, vous pouvez vérifier que le conteneur web
est en cours d'exécution en utilisant docker ps
.
docker ps
Vous devriez voir le conteneur my-compose-app_web_1
listé avec un statut Up
.
Ceci démontre comment démarrer sélectivement les services définis dans votre fichier docker-compose.yml
, ce qui est utile pour gérer des applications multi-services plus complexes.