3

我有两个容器,一个链接到另一个。如下...

docker run -i -t --name container1 ubuntu:trusty

docker run -i -t --name container2 --link container1:aliasc1 ubuntu:trusty /bin/bash

container1有没有一种简单的方法可以从container2使用链接别名获取 ip aliasc1

我使用docker-compose编排容器

4

3 回答 3

5

/etc/hostDocker 将为链接的容器创建一个条目。所以你可以从那里得到那个ip。IE:

cat /etc/hosts | grep aliasc1 | awk {'print $1'}

于 2015-04-04T14:11:04.920 回答
1

为此,Docker 会自动创建环境变量。例如如果container1暴露了 80 端口,那么container2就已经$ALIASC1_PORT_80_TCP_ADDR定义了。

请参阅http://docs.docker.com/userguide/dockerlinks/#environment-variables

于 2015-10-09T05:30:43.920 回答
1

你可以试试getent

getent hosts aliasc1 | awk '{ print $1 }'

https://unix.stackexchange.com/questions/20784/how-can-i-resolve-a-hostname-to-an-ip-address-in-a-bash-script

于 2016-10-27T02:22:02.413 回答