我知道Docker在127.0.0.11上运行了一个神奇的dns,所以我想我会尝试
nslookup mycontainername 127.0.0.11
其中mycontainername
当然是我正在尝试访问的容器的名称。但是,那时间已经过了。
;; connection timed out; no servers could be reached
我做错了什么?我在Docker 1.10.3上。如果有帮助,我会使用docker-compose
1.6.2。
编辑这是Docker 1.10 access a container by it's hostname from a host machine
的副本答案 0 :(得分:2)
对此有一个极好的解决方案,该问题已在本文中得到解答:https://stackoverflow.com/a/51125399/9270227。基本上,它只是一个名为docker-hoster的轻型容器,可以为您完成所有繁重的工作。
答案 1 :(得分:1)
在documentation中,它暗示只有在您明确创建了网络并将容器附加到它们之后,这才有效。尝试类似:
docker network create -d bridge --subnet 172.25.0.0/16 isolated_nw
docker network connect isolated_nw mycontainername
看看你是否可以使用127.0.0.11(在版本1.10.3上为我工作)
有关详细信息,请参阅this ticket。