Docker-compose

De wiki jackbot
Aller à la navigation Aller à la recherche


docker-compose est un programme qui va permettre de créer et lancer plusieurs conteneurs grâce à un fichier docker-compose.yml Exemple :

version: '2'
services:
   courriels:
   image: ubuntu:courriels
   container_name: conteneur_courriels
   volumes:
   - "/chemin_sur_l_hote1:chemin_sur_le_conteneur1:ro"
   - "/chemin_sur_l_hote2:chemin_sur_le_conteneur2:rw"
   - "/chemin_sur_l_hote3:chemin_sur_le_conteneur3"
   links:
   - "mail-db:db"
   ports:
   - "25:25"
   - "1337:42"
   networks:
   - courriels

Dans ce cas, le service crée sera courriels, le conteneur sera démarré à partir de l'image ubuntu:courriels et portera le nom conteneur_courriel. Dans la section volume on définit les différents dossiers de l'hôte qui seront montés dans le conteneur, notez que les lignes peuvent se terminer par 'ro' qui signifie (read only) lecture seule, 'rw' (read write) lecture écriture ou alors sans paramètre, dans ce cas 'rw' sera utilisé par défaut. La partie links permet de définir des alias pour le réseau, ports définie quels seront les ports ouvert vers l'extérieur et leur correspondance en interne et enfin network spécifie à quels réseau sera connecté ce conteneur.

Pour créer un réseau il suffit d'ajouter ce bloc :

networks:
   courriels: {}
   reseau1: {}
   reseau2: {}
   reseau3: {}
   ...

Aide mémoire : https://devhints.io/docker-compose