{{tag>sysadmin netadmin software docker}} ====== Docker : Accéder aux services de l’hôte depuis un conteneur ====== Selon les systèmes il est possible de résoudre l’hôte depuis le conteneur via le FQDN spécial ''host.docker.internal''. Si la résolution ne fonctionne pas, lors de l'installation de Docker un pont par défaut est créé (docker0 ou bridge0). La machine hôte possède une adresse fixe dans ce réseau (par défaut 172.17.0.1). Depuis le conteneur on peut utiliser cette adresse pour se connecter aux services écoutant sur l' hôte. Autre possibilité, créer une variable d'environnement transmise au conteneur lors de sa création par exemple: docker container run -it -e "DOCKER_HOST=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')" busybox:latest /bin/sh # Depuis le shell du conteneur, on affiche les variables d'environnement printenv HOSTNAME=beebdd3a7f95 . . . DOCKER_HOST=172.17.0.1 ===== Références ===== * https://sophilabs.com/blog/communication-between-containers-and-host-machine * https://stackoverflow.com/questions/36934572/docker-container-cannot-resolve-hosts