Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verbinde ich eine Dockerized Go-Anwendung mit einer lokalen MongoDB-Datenbank?

Wie verbinde ich eine Dockerized Go-Anwendung mit einer lokalen MongoDB-Datenbank?

Linda Hamilton
Linda HamiltonOriginal
2024-11-20 01:23:03548Durchsuche

How to Connect a Dockerized Go Application to a Local MongoDB Database?

Lokale MongoDB-Datenbank mit Docker-Go-Anwendung verbinden

Beim Versuch, eine Dockerized Go-Anwendung mit einer lokalen MongoDB-Datenbank zu verbinden, kann es zu einem Problem kommen Fehler „Keine erreichbaren Server“. Dieses Problem ist auf die von Docker erstellte isolierte Netzwerkumgebung zurückzuführen, in der der Container eine eigene IP-Adresse hat.

Um dieses Problem zu beheben, müssen Sie eine Kommunikation zwischen dem Container und dem Host-Computer herstellen. Docker stellt zu diesem Zweck eine spezielle URL bereit: host.docker.internal.

Angenommen, Ihre MongoDB-Instanz läuft auf dem Host-Rechner und ist an alle Schnittstellen gebunden, können Sie aus dem Docker-Container heraus wie folgt eine Verbindung zu ihr herstellen Verbindungszeichenfolge:

mongodb://host.docker.internal:21017/database

Ersetzen Sie „Datenbank“ durch den Namen Ihrer MongoDB-Datenbank.

Durch Verwendung Mit host.docker.internal als Hostnamen stellen Sie eine Verbindung zwischen dem Container und der Datenbank her, die auf dem Host-Rechner läuft. Denken Sie daran, dass der Container keinen direkten Zugriff auf die lokale IP-Adresse des Hosts hat, daher müssen Sie host.docker.internal als Proxy verwenden.

Das obige ist der detaillierte Inhalt vonWie verbinde ich eine Dockerized Go-Anwendung mit einer lokalen MongoDB-Datenbank?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn