dar*_*rda 5 dnsmasq docker docker-compose
我有一组使用 创建的 docker 容器docker compose,它创建了一个“用户定义的”桥接网络。
这些 docker 容器之一正在运行DNSmasq,因此我们可以定义自定义(内部)域名来指向本地 IP。
问题是,其他 docker 容器都无法解析这些域名。我认为问题是我无法让 docker DNS 将其请求转发到运行 DNSmasq 的 docker 容器(即它甚至不知道它存在)。
作为测试,我做了一个docker network inspect <network created by docker compose>并记录了 DNSmasq 容器的 IP 地址。然后,在其他容器之一中/etc/resolv.conf,我设置nameserver为该 IP 地址。然后我就可以解析所有这些内部域名。
遗憾的是,dnsmasq尽管用户定义的网络启用了自动服务发现,但放置在那里并不起作用。
似乎完成这项工作的一种方法是强制我的 DNSmasq 容器始终具有相同的 IP,然后确保其他 docker 容器指向该 IP 作为其名称服务器,例如通过在compose 文件中显式定义网络。
难道就没有别的办法了吗?当我只想知道一个容器的 IP 地址时,我宁愿不必定义整个网络来复制这个自动创建的网络。
| 归档时间: |
|
| 查看次数: |
682 次 |
| 最近记录: |