zoukankan      html  css  js  c++  java
  • 解决docker中DNS查询的问题

    I got a dns error that i can not access dns server, 

    that caused by : /etc/resolv.conf

    you can find this in host-machine

    nameserver 127.0.1.1
    search gd1.qingcloud.com

    Yes, you can find the process named "dnsmasq" listening 53 port, so you got nameserver 127.0.1.1 firstly.

    however, it's not same with the docker machine,

    search gd1.qingcloud.com

    nameserver 8.8.8.8
    nameserver 8.8.4.4

    you can find this from  /etc/resolv.conf

    the based image is download from docker offical via docker pull ubuntu.

    so you get 8 repeats 4 times dns server.

    however, WTF this at start ? => search gd1.qingcloud.com

    in docker, you don't have dnsmasq, you can not find gd1.qingcloud.com, have not configure nameserver 127.0.0.1

    you have do this to fix it:

    nameserver 202.96.209.133  # valid nameserver ip address, remove "search gd1.qingcloud.com"
    nameserver 8.8.8.8
    nameserver 8.8.4.4

    -----------------------

    一种更好的方式是直接安装 dnsmasq

    apt-get install dnsmasq

    service dnsmasq start

    其中报错:

    * Starting DNS forwarder and DHCP server dnsmasq 
    dnsmasq: setting capabilities failed: Operation not permitted

    解决方法:

    https://www.damagehead.com/blog/2015/04/28/deploying-a-dns-server-using-docker/

    添加配置:

    conf-dir=/etc/dnsmasq.d/,*.conf
    
    interface=lo
    interface=eth0
    interface=docker0
    resolv-file=/etc/resolv.dnsmasq.conf
    user=root
    

      service dnsmasq start

  • 相关阅读:
    【一起来烧脑】读懂HTTP知识体系
    Day16:小前端
    Day15:大前端
    Day14:CSS垂直居中
    Day13:H5+JS+C3
    web学习
    javascript 闭包
    微信小程序微信登录
    微信小程序开源
    mpvue搭建小程序框架
  • 原文地址:https://www.cnblogs.com/clor001/p/5776847.html
Copyright © 2011-2022 走看看