Docker搜索或拉取鏡像時提示timeout
作者: 鄭曉 分類: Linux, PHP 發(fā)布于: 2019-05-20 19:16 瀏覽:24,258 評論(5)
【更新】推薦直接在物理主機的config.json文件進行配置,因為發(fā)現(xiàn)下面的方式修改/etc/resolv.conf后,重啟docker時會失效。
配置文件默認在C:\Users\你的用戶名\.docker\machine\machines\default內(nèi)。
編輯其中的HostOptions>EngineOptions>Dns項,比如修改成:
{
"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時報類似下面的錯誤:
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ā)生錯誤,這個問題修改物理本機的hosts并沒有效果,需要:
docker-machine ssh
來登錄到docker默認虛擬機環(huán)境,然后使用
sudo -i
來切換到root權限,然后執(zhí)行:
echo “nameserver 8.8.8.8” > /etc/resolv.conf
來把8.8.8.8做為默認dns,這個/etc/resolv.conf內(nèi)原來內(nèi)容就是報錯信息中顯示的錯誤DNS。
exit退出ssh環(huán)境,現(xiàn)在就可以正常使用docker search等相關命令了。
本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進行許可,轉(zhuǎn)載時請注明出處及相應鏈接。
本文永久鏈接: http://m.yjfs.org.cn/docker-dns-udp-lookup-timeout.html
非常感謝,更新了8.8的DNS后,果然沒問題了。