昨天公司的開發同窗跟我說,使用docker pull拉取鏡像時一直報錯,報錯信息以下:linux
# docker pull dockerhub.daguan.com/ceshi/data_test:18.12.13.1153 Error response from daemon: manifest for dockerhub.daguan.com/ceshi/data_test:18.12.13.1153 not found
我開始在本身的Mac本上進行拉取鏡像測試,發現是能夠正常拉取的!docker
通過嘗試,查看系統messages信息,發現是網絡問題,以下:vim
Dec 20 11:13:46 dockertest dockerd: time="2018-12-20T11:13:46.498227008+08:00" level=error msg="failed removing service binding for xxxxxx epRec:{rec_priv_indexing.1.xxxx rec_priv_indexing xxxxxx 192.168.246.171 192.168.246.250 [] [indexing] [xxxxxx]} err:network xxxxxxxx not found"
說明:上面無關信息我已經xxxx忽略掉了~網絡
後來想起來,公司的dockerhub庫平臺以前被遷移過,域名解析IP更改過!tcp
嘗試修改/etc/hosts強制docker.io相關的域名解析到其它可用IP。ide
vim /etc/hosts
添加一個可用IP:學習
110.200.19.34 dockerhub.daguan.com //請更改爲本身的IP和域名
保存以後重試,已恢復正常!測試
如出現下面"timeout"報錯信息,也能夠嘗試上面的修復方法,以下:.net
Error response from daemon: Get https://index.docker.io/v1/users/: dial tcp: lookup index.docker.io on 192.168.65.1:53: read udp 192.168.65.2:58812->192.168.65.1:53: i/o timeout
或:code
若是使用上面的方法即修改/etc/hosts
,沒有效果,請更改下本身電腦上Docker subnet
網段,以下:
在上圖中,咱們看到192.168.65.1
網段出現了問題,那麼咱們更改下Docker subnet 爲192.168.66.0
,重啓docker便可!
或者是:
[root@archlinux quanxj]# docker image pull library/hello-world Using default tag: latest latest: Pulling from library/hello-world ca4f61b1923c: Pull complete error pulling image configuration: Get https://registry-1.docker.io/v2/library/hello-world/blobs/sha256:f2a91732366c0332ccd7afd2a5c4ff2b9af81f549370f7a19acd460f87686bc7: dial tcp 35.169.231.249:443: i/o timeout
解決Error response from daemon: Get https://registry-1.docker.io/v2/library/hello-world/manifests/