首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法通过Docker连接到外部Mongodb IP

无法通过Docker连接到外部Mongodb IP
EN

Stack Overflow用户
提问于 2018-10-17 16:25:51
回答 1查看 552关注 0票数 0

我使用docker部署我的Spring boot Netflix微服务多项目。

我没有任何问题停靠运行我的尤里卡和配置项目。

但是,当我将另一个项目传递给eureka时,系统抛出以下错误

代码语言:javascript
复制
 monitor thread while connecting to server localhost:27017
com.mongodb.MongoSocketOpenException: Exception opening socket.

我知道,如果Spring boot不能通过设置为配置存储库的application.xml的spring.data.mongodb.uri的uri与Mongodb通信,那么默认情况下它会连接到本地主机。

我百分之百确定这个spring.data.mongodb.uri指向了正确的url。但是,当我运行Spring页面的/env时,我看不到spring.data.mongodb.uri。

如果我在没有docker的情况下部署eureka,config和项目,系统运行良好。

有人能解释为什么docker和非docker环境中的行为是不同的吗?

EN

回答 1

Stack Overflow用户

发布于 2018-10-17 17:09:32

当在docker容器中运行时(如果您在docker容器中运行所有内容),所有容器都连接到一个默认网络。例如,默认网络的子网为172.16.1.0/28。您可以使用以下命令检查每个容器使用的ip地址:

代码语言:javascript
复制
docker inspect {name-or-id-of-container}

这意味着,默认情况下,端口27017在本地主机中不可用。

更新:我已经创建了一个样例项目,涉及到Eureka Server、Config Server和应用程序读取spring.data.mongodb.uri属性并打印到标准输出。

https://github.com/bkuzmic/spring-cloud-docker-sample

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52850400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档