前言
之前将 Docker 中的路由转发到了宿主机,相当于每个容器都变成了一个小型服务器。
然而各个服务之间都会可能会通过自定义域名进行交互,这个时候,我们需要在容器中的 etc/hosts 中写入所依赖的服务IP及其域名。
为了能够更好的解决这个问题,再次之前自建了 DNS 服务,这个时候,只需要指定一下 Docker 的 DNS 配置即可。
环境
DockerUbuntu20.04
准备
需要有自建的 DNS 服务,可以参考 Ubuntu使用dnsmasq自建dns服务
配置
Linux
这里以 Ubuntu20.04 为例
编辑 Docker 的 daemon.json
sudo vim /etc/docker/daemon.json
添加如下配置:
{
"dns": ["自建DNS服务的IP", "8.8.8.8"]
}
重载配置及重新启动
sudo systemctl daemon-reload
sudo service docker restart
Windows

点击下方 Apply & Restart。
Mac
参考 Linux 和 Windows 配置。
最后
再也不用去指定一堆 hosts 了,服务之间可以互相调用了。

701

被折叠的 条评论
为什么被折叠?



