作为解决Hibernate OGM连接问题的一部分,我想看看我是否从Robo 3T连接。
我构建我的MongoDB映像并开始运行。
docker ps:
MacBook-Pro:GoStopHandle NOTiFY$docker ps容器ID图像
命令创建状态端口名称0375a68b9988 goStop handlemongob:最新
"docker-entrypoint. s..."5秒前上升4秒
0.0.0.0:32844-
容器的IP地址是:
docker inspect-f{{range.NetworkSettings.Networks}}{{.IPAddress}{{end}}0375a68b9988 172.17.0.2
我已经进入了“Mongo”外壳:
docker exec-it goStopHandleMongo mongo管理员
我添加用户
> db.createUser(
... {
... user: "NOTiFY",
... pwd: "MyPassword",
... roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
... }
... )
Successfully added user: {
"user" : "NOTiFY",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
},
"readWriteAnyDatabase"
]
}
然后设置“身份验证”:
当我尝试时
有什么建议吗?
在我的例子中,我在Mac OSX上运行docker,docker使用我的主机IP地址,结果docker检查CONTAINER_ID-格式 '{{ . 网络设置。IPAddress}}'
会给我一个空字符串。Mac OSX和Windows上的Docker主机地址是host.docker.internal
。因此,在将robo 3t上的主机地址设置为host.docker.internal
后,我能够连接到docker中运行的mongob实例
要连接,您只需在Robo3T上连接localhost:27017。
问题源于容器的内部IP和外部IP之间的混淆。内部IP是容器在docker网络中的地址,该网络与主机网络隔离(除非明确桥接)。执行docker inspect命令时,您在docker网络上获取了容器的IP。
您的容器正在监听docker网络中的0.0.0.0:32844
,并通过映射到端口27017的端口暴露给主机。因此,如果您在docker网络中有另一个容器,您应该使用172.17.0.2:32844
访问您的服务。但是,如果您在docker网络之外有任何东西,您应该使用localhost:27017
或[您的主机IP]: 27017
访问您的mongob。
希望这有帮助!
直到我不得不重新启动我的Mac,我才意识到我仍然有一个本地MongoDB实例在运行,因此我没有连接到我的MongoDB Docker实例,而是我的本地(Brew安装)实例。
有一次我看到@Artjom Zabelin在这里回答“不要忘记将端口映射到主机端口”
docker run --name some-mongo -p 27017:27017 -d mongo
它连接到运行我的容器的MongoDB。
我需要localhost是对的。
问题内容: 我正在使用docker- compose 运行一个应用程序。一切正常,通过连接到容器内的Mongo,我可以看到所有数据。但是,当我连接到RoboMongo时,我看不到任何数据。 我该如何解决这个问题? 问题答案: 您应该在Docker容器内建立到MongoDB的Robomongo SSH隧道连接。首先,您应该在docker容器中安装一个ssh服务器。 https://docs.dock
我有一些docker conatiner,现在我想用ssh进入一个。我通过ssh连接到了docker容器。 但是现在我有一个问题,我不知道我可以用哪个用户访问这个容器? 我在主机(web)上的两个用户中都尝试过
我无法将作为docker容器运行的应用程序连接到mongoDB。我知道新版本docker compose不推荐使用“链接”,所以我尝试使用自定义网络。我的码头工人。yml: 我的应用程序的Dockerfile: 当我运行时,我在应用程序中得到以下错误消息: 在第一次连接时连接到服务器[127.0.0.1:27017]失败[MongoNetworkError:连接ECONNREFUSED127.0.
我的数据库连接是用下面的类处理的: 这是我的spring boot控制器 下面是我的dockerfile: 我读了这里和这里提到的解决方案。也阅读了一些教程,但我无法将这些解决方案中的任何一个适合我的代码。在我的代码中,我应该在哪里更改?
我有zipkin服务器作为Spring Boot应用程序运行。我已经将jar导出到docker容器。 我已经探索过这个环节。
问题内容: 我在将作为docker容器运行的nodeJS应用程序连接到mongoDB时遇到问题。让我解释一下到目前为止我做了什么: 如您所见,已经有一个mongo docker容器正在运行。 现在我正在运行我的nodeJS应用程序docker容器(这是来自meteorJS的构建): 在这个Docker容器中,我想通过运行以下命令来运行应用程序: 现在我得到了错误 我已经尝试通过设置以下内容来设置M