Docker Compose CLI
La plupart des commandes docker ont leurs équivalents avec docker compose, mais leurs fonctionnalités sont adaptées à la gestion de stack multi-container et les fonctionnalités ne sont pas toujours équivalentes.
# Rappel
docker compose --help
Exercices
Utiliser une commande permettant de puller l'ensemble des images de la stack en parallèle.
- Permet de gagner du temps lors du pull de nombreuses images
Lancer la stack Compose avec les options suivantes:
- Mode détachée (Tout comme
docker,docker composelance les containers en mode interactif par défaut) - Forcer la récréation des containers déjà existants
Lancer la stack puis modifier le fichier docker-compose.yml pour changer le port exposé de result pour 5002. Appliquer les changements à la stack avec une commande docker compose.
Quelques manipulations:
- Arrêter, démarrer puis re-démarrer la stack
- Lister les images utilisées par la stack
- Lister les containers de la stack
- Afficher les logs de l'ensemble des containers de la stack
- Afficher les logs d'un container de la stack et suivre les changements
- Executer une session shell interactive dans le container
vote - Arrêter et supprimer la stack, puis ne lancer que le service
vote - Arrêter et supprimer la stack
Ces commandes seraient possibles directement avec docker en y spécifiant les options requises. docker compose intéragi avec le Daemon Docker tout comme docker.
Plusieurs stacks peuvent coéxister en s'assurant qu'il n'y a pas de conflits de ports ou autre.
Copier le fichier docker-compose.yml et nommer cette copie docker-compose-bis.yml puis lancer 2 stacks en parallèle
- Celle utilisant
docker-compose.ymldoit être nomméapp - Celle utilisant
docker-compose-bis.ymldoit être nomméeapp-bis - Attention aux conflits de nom de container et ports: le nom des containers doivent être uniques ainsi que les ports exposées sur la machine