我有两个容器一个链接到另一个。至于下面......有没有办法使用链接别名获取链接容器的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