Docker containers not using host DNS in boot2docker

梦想的初衷 提交于 2019-12-01 17:58:02

I found a fix. It appears that the boot2docker image runs the docker daemon before it pulls the DNS from the host. So boot2docker thinks the DNS is set to 127.0.0.1 when it boots, then the machine changes it to the correct nameserver.

The fix is to restart the docker daemon after the image has booted. In vagrant, I did this by adding the below command in the appropriate place in my Vagrantfile:

config.vm.provision :shell, inline: "/etc/init.d/docker restart"

It looks like this is a known issue in boot2docker that will be fixed in an upcoming version: https://github.com/boot2docker/boot2docker/issues/357

credit to @oillio for the issue link and the discussion inside.

It happens in Windows 7 environment as well using boot2docker 1.0.1, I follow the suggestion in https://github.com/boot2docker/boot2docker/issues/357

$ sudo udhcpc   # refresh the DHCP 
$ sudo /etc/init.d/docker restart # restart the service
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!