Maison > développement back-end > Golang > Comment puis-je connecter ma base de données MongoDB locale à une application Go exécutée dans un conteneur Docker ?

Comment puis-je connecter ma base de données MongoDB locale à une application Go exécutée dans un conteneur Docker ?

Susan Sarandon
Libérer: 2024-11-28 11:46:11
original
437 Les gens l'ont consulté

How Can I Connect My Local MongoDB Database to a Go Application Running in a Docker Container?

Connexion de la base de données MongoDB locale à Docker

Dans le domaine du développement logiciel, il est courant de rencontrer le défi de l'intégration de services locaux avec des conteneurs Docker . Dans ce cas précis, vous êtes confronté à un problème de connexion de votre base de données MongoDB, qui s'exécute localement, à votre application Go exécutée dans un conteneur Docker.

Le problème réside dans l'isolement de l'environnement Docker. Lorsque vous exécutez votre application dans Docker, elle fonctionne dans un environnement virtuel avec sa propre configuration réseau. Cela signifie que votre base de données MongoDB locale n'est pas directement accessible depuis le réseau du conteneur.

Pour résoudre ce problème, Docker fournit une adresse IP spéciale, host.docker.internal, qui correspond à l'adresse IP de la machine hôte dans le domaine du conteneur. réseau. En utilisant cette adresse IP dans votre chaîne de connexion MongoDB, vous pouvez combler le fossé de communication entre le conteneur et la base de données locale.

Voici la chaîne de connexion modifiée qui corrigera l'erreur « Créer une session : aucun serveur accessible » :

mongodb://host.docker.internal:27017/database
Copier après la connexion

En utilisant host.docker.internal comme nom d'hôte, votre application pourra établir une connexion à votre base de données MongoDB locale même lorsqu'elle est exécutée dans le Conteneur Docker.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal