我有两个开始使用的容器:
-name foo --hostname mynet.foo
-name bar --hostname bar
我可以从foo
容器使用ping bar
ping栏,但只能从bar
容器使用foo
(容器名称)ping ping foo
容器。如果我尝试使用ping mynet.foo
ping foo,那么我会有一个bad address: mynet.foo
。
我需要将主机称为--hostname
值而不是-name
值。
来自this:--hostname
是local hostname of the container (i.e. the one it sees itself).
疯了!
答案 0 :(得分:1)
要通过其主机名访问容器,只需为其添加一个主机项。
例如:
docker run -tid --name foo --add-host=bar:<ip-address-of-bar-container> -h mynet.foo <image-name>
docker run -tid --name bar --add-host=mynet.foo:<ip-address-of-foo-container> -h bar <image-name>
通过此操作,您将能够从bar容器ping mynet.foo,反之亦然。