Dns 如何为所有docker容器提供动态主机名?

Dns 如何为所有docker容器提供动态主机名?,dns,docker,Dns,Docker,目前,我有一台机器开始运行docker映像。我想做的是让所有容器都可以通过基于容器名称的主机名访问。因此,如果我有容器C1和C2,docker服务器的主机是mydocker.local,那么C1.mydocker.local将指向容器图像C1,如果我运行C3,它将作为C3.mydocker.local可用 看起来和我想做的很相似,但是这个项目已经有7个月没有更新了,文档也不足以让它运行 这似乎是一个非常常见的用例,但我无法创建适当的google查询魔法来查找任何内容。您可以尝试自动更新主机的主机

目前,我有一台机器开始运行docker映像。我想做的是让所有容器都可以通过基于容器名称的主机名访问。因此,如果我有容器
C1
C2
,docker服务器的主机是
mydocker.local
,那么
C1.mydocker.local
将指向容器图像
C1
,如果我运行
C3
,它将作为
C3.mydocker.local
可用

看起来和我想做的很相似,但是这个项目已经有7个月没有更新了,文档也不足以让它运行

这似乎是一个非常常见的用例,但我无法创建适当的google查询魔法来查找任何内容。

您可以尝试自动更新主机的
主机
文件,或创建一个
dns
服务,如
Dnsmasq


此外,我还发现了一个名为docker image的docker映像,仅使用docker gen和dnsmasq就可以解决您的问题。

A如果容器相互依赖,您应该使用显式链接。这将更新容器内的etc hosts文件,为每个链接的容器添加ip

如果您确实想要类似的东西,那么它将为您提供一个完整的虚拟专用网络,其中每个容器都有自己的IP。Rancher还支持为所有运行的容器维护DNS的服务。使用rancher的好处是,它也可以在多主机场景中工作