【发布时间】:2015-09-26 10:10:28
【问题描述】:
注意:问题与 Bluemix docker 支持有关。
我正在尝试连接部署在 Bluemix 中的两个不同的 Docker 容器。我得到了例外:
java.net.NoRouteToHostException: No route to host
当我尝试这种连接时(在 Liberty 上运行的 Java EE 应用程序试图访问 MySQL)。我尝试使用 MySQL Docker Container 的私有和公共 IP。
关键是我能够从 Bluemix 外部访问 MySQL Docker Container。所以IP、端口和MySQL本身都ok。
这似乎与 Bluemix 中 Docker 容器支持的内部网络有关。如果我尝试从 Bluemix 内部访问它会失败,如果我从外部访问它会工作。有什么帮助吗?
更新:正如您在 cmets 中看到的那样,我继续调查,这似乎是一个时间问题。我的意思是,一旦容器启动并运行,似乎仍有一些连接工作尚未完成。如果我能够等待大约 1 分钟,然后再尝试连接它就可以了。
【问题讨论】:
-
它们是在一台主机上运行还是在不同主机上运行?
-
我无法回答。这两个容器都部署在 Bluemix 中,由平台决定内容和位置。作为最终用户,我无权访问此类信息。我只知道他们都有一个私有和公共 IP。
-
所以你是说容器 1 不能在公共或私有 ip 上与容器 2 通信?
-
对。我有一个运行良好的部署。如果像 Chasmo 之前询问的那样将容器部署在不同的主机中,是否有可能存在任何类型的防火墙或任何东西?还在调查中……
-
我失败了。然后我重新启动了前端容器(未重新部署)然后它工作了。不明白。我没有触及任何源代码,也没有触及后端容器。还在调查中……
标签: docker containers ibm-cloud