2014-12-26 65 views
1

我有兩個在同一主機(centos 6服務器)上運行的碼頭集裝箱。在同一主機中的2個碼頭集裝箱之間沒有到主機的路由

容器1 >>我的web應用程序(端口映射到主機的一些隨機端口)
容器2個>>蟒蛇硒testscripts(運行無頭火狐)

我的測試失敗的情況下說的問題載入頁面
基本上問題是駐留在同一主機上的第二個容器或任何其他容器無法訪問我的Web應用程序。 但我的web應用程序是入店到外面的世界

我聯繫容器和仍然我面對我試着在我的筆記本電腦複製相同的設置問題
(Ubuntu的)和它的做工精細!

任何幫助讚賞! 在此先感謝

+0

是相同的順序遵循上都筆記本電腦和CentOS系統.. –

回答

2

我認爲訂單在連接容器時很重要。你應該開始container1網絡應用程序,然後linkcontainer2webapp

0

是的容器啓動的順序確實重要,但我通過jenkins啓動我的web應用程序容器。

jenkins配置在容器2中。 所以我無法手動啓動我的web應用程序(容器1)。

有沒有其他的解決方案,像雙向連接?

1

您需要更改您的硒腳本以使用docker link id或alias作爲主機名。

例如,如果你做的事:

$ sudo docker run -d --name webapp my/webapp 
$ sudo docker run -d -P --name selenium --link webapp:webapp my/selenium 

那麼你的硒腳本應該指向http://webapp/

1

我在Fedora的(22)這個問題 - 對於一些容器(不是全部)。經過檢查,它顯示iptables上有一個特殊的DOCKER鏈,可以使一些連接鬆動。追加爲鏈條的接受規則所做工作的事情:

sudo iptables -A DOCKER -p tcp -j ACCEPT 

(雖然達不到這個問題之前,搜索的問題,有建議,這也發生在CentOS的和RHEL)