docker创建dns服务器

1、docker run -d -p 53:53/tcp -p 53:53/udp --cap-add=NET_ADMIN --name dns-server andyshinn/dnsmasq:2.75

本以为顺利完成,结果报错:

docker: Error response from daemon: failed to create endpoint dns-server on network bridge: Error starting userland proxy: listen tcp 0.0.0.0:53: bind: address already in use.

netstat -lnp|grep 53  dns服务默认是用的53端口被占用了。

禁用dnsmasq

删除NetworkManager配置信息

sudo vim /etc/NetworkManager/NetworkManager.conf

删除下面的内容,然后保存

dns=dnsmasq

2、docker ps

3、 docker exec -it dns-server /bin/sh

4、vi /etc/resolv.dnsmasq

nameserver 202.101.186.86

nameserver 8.8.8.8

5、vi /etc/dnsmasqhosts

172.20.2.14 www.test.cc

172.20.2.15 slave15

172.20.2.16 slave16

6、vi /etc/dnsmasq.conf

resolv-file=/etc/resolv.dnsmasq

addn-hosts=/etc/dnsmasqhosts

7、回到宿主,重启dns-server容器服务。

docker restart dns-server

8、将你的机器dns改成docker服务器的ip

相关推荐