Docker 主机名不起作用

Docker 主机名不起作用
docker run -d -v /srv/dockervolume/openssh-git/srv:/srv --name node-basickarl -h node-basickarl basickarl/node-basickarl

ping:

root@domain:/srv/dockervolume/haproxy/etc/haproxy# ping node-basickarl
ping: unknown host node-basickarl

当我 ping ipv4 地址时,它可以工作。为什么主机名不起作用?

答案1

我发现错误--name node-basickarl应该是--name=node-basickarl

答案2

Docker 容器需要在本地 DNS 服务器或 /etc/hosts 文件中创建 DNS 条目,以便通过主机名进行访问。默认情况下,它们不会执行此操作。

根据您正在执行的操作,在主机文件中手动为容器创建一个条目可能是最简单的解决方案。

这篇文章列出了几个备选方案:

https://stackoverflow.com/questions/31149501/how-to-reach-docker-containers-by-name-instead-of-ip-address

答案3

您是否尝试获取图像:https://hub.docker.com/r/basickarl/node/? 尝试运行此命令:

docker run -d -v /srv/dockervolume/openssh-git/srv:/srv --name node-basickarl basickarl/node

相关内容