2015-09-26 361 views
0

注意:問題與Bluemix docker支持有關。兩個Docker容器之間的「java.net.NoRouteToHostException:沒有路由到主機」

我正試圖連接在Bluemix中部署的兩個不同的Docker容器。我得到異常:

java.net.NoRouteToHostException: No route to host 

當我嘗試(上自由運行的Java EE應用程序試圖訪問MySQL)這樣的連接。我嘗試使用MySQL Docker Container的私有和公共IP。

問題是我能夠從Bluemix之外訪問MySQL Docker Container。所以IP,端口和MySQL本身都可以。

這似乎與Bluemix中Docker Container支持的內部網絡有關。如果我嘗試從Bluemix內部進行訪問,它會失敗,如果我從外部進行操作。任何幫助?

更新:我繼續調查,你可以看到在評論中,這似乎是一個時間問題。我的意思是,似乎一旦容器啓動並運行,仍有一些連接工作仍未完成。如果我能夠等待大約1分鐘,然後嘗試連接它就可以工作。

+0

它們是在一臺主機上還是在不同的主機上運行? –

+0

我無法回答。兩個容器都部署在Bluemix中,平臺決定什麼和在哪裏。作爲最終用戶,我無法訪問這些信息。我只知道他們都有私人和公共IP。 –

+0

所以你說容器1不能在公共或私人IP上與容器2通話? – jpapejr

回答

0

60秒應該是網絡在容器創建後開始工作的經驗法則。

+0

謝謝@ywang。你知道這樣的「規則」是否記錄在任何地方? –

+0

[文檔](https://www.ng.bluemix.net/docs/containers/container_single_ov.html#container_single_cli)表示有大約30秒的等待時間,但有時可能需要更長時間,我們正在努力縮短等待時間。謝謝。 – ywang

+0

非常感謝@ywang,我錯過了那一段。 –