Sans déclaration particulière, le docker-compose
crée un réseau dédié au sein duquel les services définis peuvent se contacter les uns les autres directement via le nom du service. Ce réseau dédié est isolé. Pour qu'un service soit joignable de l'extérieur il faudra déclarer un NAT.
Pour exemple, ci-dessous le docker-compose déclare 2 services
# Instanciation des services docker-compose up -d Creating network "mqtt_default" with the default driver . . .
La commande docker-compose up retourne des informations sur la ligne de commande, notamment la création d'un réseau ici “mqtt_default”. Au sein de ce réseau, chaque service est accessible:
# création d'un shell interactif dans le conteneur mosquitto docker-compose exec mosquitto /bin/sh # contact du service mqtt2prometheus / # ping mqtt2prometheus PING mqtt2prometheus (172.20.0.3): 56 data bytes 64 bytes from 172.20.0.3: seq=0 ttl=64 time=0.081 ms
Il est possible de définir des alias par l'intermédiaire desquels le service pourra être joignable par tout autre conteneur présent sur le même réseau: