有没有办法使用 link 别名获取 linked 容器的 ip?
is there a way to obtain ip of linked container using link alias?
我有两个容器,一个 link 到另一个。如下...
docker run -i -t --name container1 ubuntu:trusty
docker run -i -t --name container2 --link container1:aliasc1 ubuntu:trusty /bin/bash
有没有一种简单的方法可以使用 link 别名 aliasc1
从 container2
获取 container1
的 ip?
编排容器
Docker 将在 /etc/host
中为链接的容器创建一个条目。所以你可以从那里得到那个ip。即:
cat /etc/hosts | grep aliasc1 | awk {'print '}
Docker 为此自动创建环境变量。例如,如果 container1
公开端口 80,则 container2
将定义 $ALIASC1_PORT_80_TCP_ADDR
。
见http://docs.docker.com/userguide/dockerlinks/#environment-variables
你可以试试getent
。
getent hosts aliasc1 | awk '{ print }'
我有两个容器,一个 link 到另一个。如下...
docker run -i -t --name container1 ubuntu:trusty
docker run -i -t --name container2 --link container1:aliasc1 ubuntu:trusty /bin/bash
有没有一种简单的方法可以使用 link 别名 aliasc1
从 container2
获取 container1
的 ip?
Docker 将在 /etc/host
中为链接的容器创建一个条目。所以你可以从那里得到那个ip。即:
cat /etc/hosts | grep aliasc1 | awk {'print '}
Docker 为此自动创建环境变量。例如,如果 container1
公开端口 80,则 container2
将定义 $ALIASC1_PORT_80_TCP_ADDR
。
见http://docs.docker.com/userguide/dockerlinks/#environment-variables
你可以试试getent
。
getent hosts aliasc1 | awk '{ print }'