Le conteneur défini dans docker-compose.yml est placé sous le même réseau. Les conteneurs peuvent accéder les uns aux autres par ce nom.
/var/www/container1# ping container2
64 bytes from ...réduction
docker-compose.yml Je souhaite accéder aux conteneurs 1 et 2 à de tels moments.
docker-compose.yml
version: "3"
services:
container1:
build:
context: ./docker/container1
ports:
- "3000:3000"
container2:
build:
context: ./docker/container2
ports:
- "8080:80"
Un serveur DNS du réseau est debout et résout les noms. Normalement, l'adresse IP locale de la machine hôte n'est pas accessible depuis le conteneur, mais le serveur DNS résout le nom avec le port attribué à chaque conteneur ✨ (Vous pouvez voir le serveur DNS en cours d'exécution avec la commande dig)
Comment résoudre les noms en écrivant l'adresse IP et le domaine directement dans les hôtes du conteneur. Étant donné que l'adresse IP de la machine hôte change dynamiquement avec ip4 et ip6 en fonction du paramètre wifi, l'environnement de développement peut ne pas fonctionner involontairement.
docker-compose.yml
# ports:
# - "8080:80"
extra_hosts:
- "localhost-dev:${Adresse IP de la machine hôte}"