Docker Compose est un outil utilisé sur Docker, afin de pouvoir mieux gérer ses conteneurs. En effet, lorsqu’on on a deux ou trois conteneurs à coordonner, ce n’est pas trop compliqué, mais plus le nombre de conteneurs augmente, et plus ça devient difficile. C’est la que Docker Compose intervient.
En effet, Docker Compose apporte cette coordination recherchée, et permet à ses utilisateurs d’être plus efficaces, à l’aide d’une meilleure gestion des dépendances (réseau, volumes), et cela aussi car Docker Compose intervient en matière de service.
Qu’est-ce qu’un service ? Un service comprend plusieurs conteneurs, par plusieurs on peut aussi dire vraiment beaucoup de conteneurs, car Docker Compose est un ochestrateur Docker. Docker compose orchestre une série de conteneurs, avec des actions qui auront des intéractions entre les uns et les autres.
Comment reconnaît-on un fichier Docker Compose ? C’est un fichier, en YAML (d’extension .yml
), qui peut facilement être partagé soit par git ou par mail, etc. Un fichier Docker Compose se compose comme ceci :
services: //les éléments gérer par docker-compose premierService: //nom du service, comprend un conteneur image: mysql container_name: MySQL //nom du conteneur
Dans ce fichier on peut y mettre tous les services souhaités. On déclare son nom, son image, et le nom du conteneur. On peut rajouter toute sorte d’options à notre fichier, comme restart : always par exemple, qui permet de systématiquement redémarrer le conteneur dès lors qu’il s’arrêtera tout seul. Même si docker stop est utilisé, le conteneur sera toujours existant. Docker Compose donc crée un conteneur à partir d’une image mysql, et permet une certaine garantie que le service va fonctionner.