Lorsque vous exécutez votre application dans Docker, elle s'exécute dans un environnement virtuel ; C'est comme un autre ordinateur mais tout est virtuel, y compris le réseau.
Pour connecter votre conteneur à l'hôte, Docker lui attribue une adresse IP spéciale et donne à cette adresse IP une URL avec la valeur host.docker.internal
.
Donc, en supposant que mongo s'exécute avec une liaison sur chaque interface de la machine hôte, à partir du conteneur, il pourrait être atteint avec la chaîne de connexion :
mongodb://host.docker.internal:21017/database
Pour simplifier, Just use host.docker.internal as your mongodb hostname.