Aller au contenu

Docker Compose

À quoi il sert

Compose lit un fichier compose.yaml qui décrit des services (images et configuration de conteneurs), des réseaux, des volumes et des secrets, et amène l'hôte dans cet état avec docker compose up. Il ne recrée que ce qui a changé, ordonne les démarrages selon la santé des services et fusionne des fichiers de surcharge pour séparer développement et production. Le format suit la Compose Specification ; l'outil actuel est le greffon docker compose, en version 5.

Quand le choisir

  • Environnements de développement locaux reproductibles (application, base, cache, outils).
  • Environnements de test et de démonstration.
  • Production d'applications simples sur un serveur unique, quand la haute disponibilité n'est pas requise.

Quand en choisir un autre

Dès qu'il faut plusieurs serveurs, des mises à jour sans interruption ou un redémarrage automatique sur un autre nœud en cas de panne : Kubernetes. Les concepts se transposent (services, volumes, secrets), et des outils comme Kompose proposent une première traduction.

Points d'attention

  • docker compose down -v supprime les volumes, donc les données.
  • Sans --build, une modification du code n'est pas prise en compte.
  • Hors Swarm, les secrets sont des montages en lecture seule de fichiers de l'hôte, pas des tmpfs.

Par où commencer

La leçon Décrire une application complète avec Docker Compose.