將本機 MongoDB 資料庫連接到 Docker
在軟體開發領域,經常會遇到將本地服務與 Docker 容器整合的挑戰。在這種特定情況下,您在將本機執行的 MongoDB 資料庫連接到 Docker 容器中執行的 Go 應用程式時遇到問題。
問題在於 Docker 環境的隔離。當您在 Docker 中執行應用程式時,它會在具有自己的網路配置的虛擬環境中執行。這意味著您的本機 MongoDB 資料庫無法從容器的網路直接存取。
為了解決這個問題,Docker 提供了一個特殊的 IP 位址,host.docker.internal,它會對應到容器內的主機 IP 位址網路。透過在 MongoDB 連接字串中使用此 IP 位址,您可以彌合容器和本地資料庫之間的通訊差距。
以下是修改後的連接字串,它將解決「CreateSession:無法存取的伺服器」錯誤:
mongodb://host.docker.internal:27017/database
透過使用host.docker.internal 作為主機名,即使在Docker 中運行,您的應用程式也將能夠建立到本機MongoDB 資料庫的連接容器。
以上是如何將本機 MongoDB 資料庫連接到 Docker 容器中執行的 Go 應用程式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!