将Docker父主机ip插入容器的hosts文件中

时间:2014-11-11 11:47:32

标签: docker

我是Docker的新手,并试图了解将docker parent host ip插入容器主机文件的最佳方法是什么。

我在Dockerfile中使用以下命令

RUN /sbin/ip route|awk '/default/ { print $3,"\tdockerhost" }' >> /etc/hosts

但有时主机ip会发生变化,因此它不再相关......

如果您问自己,这样做的原因是我需要访问另外2个泊坞广告容器(并且链接不提供此功能)。

谢谢,

2 个答案:

答案 0 :(得分:13)

为此--add-host选项。因此,在docker run命令中,执行以下操作:

docker run --add-host dockerhost:`/sbin/ip route|awk '/default/ { print  $3}'` [my container]

答案 1 :(得分:3)

创建/运行容器时可以使用

--add-host选项,但由于/sbin/ip命令在OSX等操作系统中不可用,我们可以使用更通用的解决方案:
docker run --add-host=dockerhost:`docker network inspect \ --format='{{range .IPAM.Config}}{{.Gateway}}{{end}}' bridge` [IMAGE]