2016-12-28 134 views

回答

1

@Giorgio謝謝您的回答,這表明我看在正確的地方。由於我在Mac上使用Docker並且您的解決方案適用於Linux環境,因此我無法使用您的解決方案來運行它。

Networing功能的碼頭工人對Mac不支持docker0接口爲https://docs.docker.com/docker-for-mac/networking/

解釋我也跟着下部分給出的解決方案:「我想從一個容器連接到服務的主機上的」上面的鏈接的。

在lo0 上創建一個別名並調整rabbitmq.config以偵聽該IP,從而解決了我的問題。

3

如果您使用--net="bridge",Docker引擎將提供虛擬網絡接口作爲getway。這是一個標準值。在linux上,您可以通過ifconfig命令知道接口的名稱。

docker0 Link encap:Ethernet IndirizzoHW 02:42:56:6c:95:26 
     indirizzo inet:172.17.0.1 Bcast:0.0.0.0 Maschera:255.255.0.0 
     indirizzo inet6: fe80::42:56ff:fe6c:9526/64 Scope:Link 
     UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 
     RX packets:28267 errors:0 dropped:0 overruns:0 frame:0 
     TX packets:25451 errors:0 dropped:0 overruns:0 carrier:0 
     collisioni:0 txqueuelen:0 
     Byte RX:52948314 (52.9 MB) Byte TX:25718113 (25.7 MB) 

在我的容器,我只是用,在這種情況下,172.17.0.1作爲網關來訪問我的主機。

內,您的容器,你也可以顯示與route命令路線,看看什麼是默認網關

[email protected]:/# route 
Kernel IP routing table 
Destination  Gateway   Genmask   Flags Metric Ref Use  Iface 
default   172.17.0.1  0.0.0.0   UG 0  0  0 eth0 
172.17.0.0  *    255.255.0.0  U  0  0  0 eth0 
[email protected]:/# 
+1

請注意,iproute2可用於查詢大多數linux'現在'IP鏈路顯示''IP地址顯示''IP路由顯示'的網絡信息 – Matt

相關問題