2017-10-04 82 views
-1

我有一個虛擬機與該IP:10.23.23.23 在這個VM,多克爾運行和2升的容器被創建:多克爾:在相同的主機從另一個容器訪問到MySQL容器(沒有到主機的路由錯誤)

  • Container1(正在運行Apache):此容器暴露端口13080和Bin的apache的容器內部的端口80
  • container2的(MySQL的):此容器暴露端口5555和綁定容器中的mysql的端口3306

在Container1,我試圖訪問container2的,但我得到了以下錯誤:SQLSTATE[HY000] [2002] No route to host

注:

VM主機上運行以下命令:

ip addr show docker0 

回報:

3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether 02:42:cf:7e:ea:b7 brd ff:ff:ff:ff:ff:ff 
    inet 172.17.0.1/16 scope global docker0 
     valid_lft forever preferred_lft forever 
    inet6 fe80::41:cfff:fe7e:eab7/64 scope link 
     valid_lft forever preferred_lft forever 

我能做些什麼才能夠從第一個容器加入第二個容器(mysql)?

+0

請包括用於啓動每個容器的命令/ config,以及您在container1中使用的主機名/端口以訪問container2。 – BMitch

+0

Stack Overflow是編程和開發問題的網站。這個問題似乎是無關緊要的,因爲它不是關於編程或開發。請參閱幫助中心的[我可以詢問哪些主題](http://stackoverflow.com/help/on-topic)。也許[超級用戶](http://superuser.com/)或[Unix&Linux堆棧交換](http://unix.stackexchange.com/)會是一個更好的地方。 – jww

回答

0

這似乎是IP:PORT揭露問題。如果您想使用主機IP來引用容器,請確保mysql正在監聽容器中的所有IP,即0.0.0.0,然後嘗試使用主機端口。

通常,當容器中的服務在localhost/127.0.0.1上運行時,會發生這些問題。

相關問題