Docker搜索或拉取鏡像時(shí)提示timeout
作者: 鄭曉 分類: Linux, PHP 發(fā)布于: 2019-05-20 19:16 瀏覽:24,096 評(píng)論(5)
【更新】推薦直接在物理主機(jī)的config.json文件進(jìn)行配置,因?yàn)榘l(fā)現(xiàn)下面的方式修改/etc/resolv.conf后,重啟docker時(shí)會(huì)失效。
配置文件默認(rèn)在C:\Users\你的用戶名\.docker\machine\machines\default內(nèi)。
編輯其中的HostOptions>EngineOptions>Dns項(xiàng),比如修改成:
{ "HostOptions": { "Driver": "", "Memory": 0, "Disk": 0, "EngineOptions": { "ArbitraryFlags": [], "Dns": ["192.168.99.1","8.8.8.8","8.8.4.4"], "GraphDir": "" }}
以下是原內(nèi)容:
環(huán)境:Win7(64) toolbox搭建的docker環(huán)境,在執(zhí)行 docker search php時(shí)報(bào)類似下面的錯(cuò)誤:
Error response from daemon: Get https://index.docker.io/v1/search?q=php&n=25: dial tcp: lookup index.docker.io on 10.0.2.3:53: read udp 10.0.2.15:46276->10.0.2.3:53: i/o timeout
index.docker.io的解析發(fā)生錯(cuò)誤,這個(gè)問(wèn)題修改物理本機(jī)的hosts并沒(méi)有效果,需要:
docker-machine ssh
來(lái)登錄到docker默認(rèn)虛擬機(jī)環(huán)境,然后使用
sudo -i
來(lái)切換到root權(quán)限,然后執(zhí)行:
echo “nameserver 8.8.8.8” > /etc/resolv.conf
來(lái)把8.8.8.8做為默認(rèn)dns,這個(gè)/etc/resolv.conf內(nèi)原來(lái)內(nèi)容就是報(bào)錯(cuò)信息中顯示的錯(cuò)誤DNS。
exit退出ssh環(huán)境,現(xiàn)在就可以正常使用docker search等相關(guān)命令了。
本文采用知識(shí)共享署名-非商業(yè)性使用 3.0 中國(guó)大陸許可協(xié)議進(jìn)行許可,轉(zhuǎn)載時(shí)請(qǐng)注明出處及相應(yīng)鏈接。
本文永久鏈接: http://yjfs.org.cn/docker-dns-udp-lookup-timeout.html
非常感謝,更新了8.8的DNS后,果然沒(méi)問(wèn)題了。