我有兩個容器一個鏈接到另一個。至於下面......有沒有辦法使用鏈接別名獲取鏈接容器的IP?
docker run -i -t --name container1 ubuntu:trusty
docker run -i -t --name container2 --link container1:aliasc1 ubuntu:trusty /bin/bash
有一個簡單的方法使用鏈接別名aliasc1
獲得來自container2
的container1
IP?
我有兩個容器一個鏈接到另一個。至於下面......有沒有辦法使用鏈接別名獲取鏈接容器的IP?
docker run -i -t --name container1 ubuntu:trusty
docker run -i -t --name container2 --link container1:aliasc1 ubuntu:trusty /bin/bash
有一個簡單的方法使用鏈接別名aliasc1
獲得來自container2
的container1
IP?
泊塢窗將創建/etc/host
爲鏈接的容器中的條目編排容器。所以你可以從那裏得到那個ip。即:
cat /etc/hosts | grep aliasc1 | awk {'print $1'}
泊塢窗自動爲此創造環境變量。例如,如果container1
公開端口80,則container2
將具有$ALIASC1_PORT_80_TCP_ADDR
定義。
見http://docs.docker.com/userguide/dockerlinks/#environment-variables
你可以試試getent
。
getent hosts aliasc1 | awk '{ print $1 }'
較短'AWK '/ aliasc1/{打印$ 1}''當然 – user2915097 2015-04-04 16:54:17
'AWK '/ aliasc1/{打印$ 1}' 的/ etc/hosts' – user2915097 2015-04-04 21:59:32