准备

创建最简单的配置 dnsmasq.conf

  1. mkdir dnsmasq && cd dnsmasq
  2. cat > dnsmasq.conf << EOF
  3. #dnsmasq config, for a complete example, see:
  4. # http://oss.segetech.com/intra/srv/dnsmasq.conf
  5. #dns解析日志
  6. log-queries
  7. #定义主机与ip映射
  8. address=/h0/172.17.205.28
  9. address=/h1/172.17.205.32
  10. EOF

docker-compose.yml

  1. cat > docker-compose.yml << EOF
  2. version: "3.7"
  3. services:
  4. gitea:
  5. image: jpillora/dnsmasq
  6. container_name: dnsmasq
  7. restart: always
  8. privileged: true
  9. ports:
  10. - 53:53/udp
  11. - 6060:8080
  12. environment:
  13. TZ: Asia/Shanghai
  14. http_user: admin
  15. http_pass: admin
  16. volumes:
  17. - ./dnsmasq.conf:/etc/dnsmasq.conf
  18. logging:
  19. driver: "json-file"
  20. options:
  21. max-size: "50m"
  22. EOF

管理界面

http://${IP}:6060

image.png

docker 应用

vi /etc/docker/daemon.json

  1. {
  2. "dns": ["dns服务器IP"]
  3. }

linux 应用

vi /etc/resolv.conf

  1. nameserver ${dns服务器IP}