在虚拟机 执行 docker select nginx 等镜像 报错 docker: Error response from daemon.... (Client.Timeout exceeded w

全部报错内容为:

docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers).

有几种可能的原因,一是 : 由于是在虚拟机部署的docker,同时又是在国内,因此需要加镜像加速器:Docker-镜像加速器

然后整体步骤可以按这个知乎的回答来:https://zhuanlan.zhihu.com/p/687737905 ,就是他的加速镜像不好使可以用上面链接提供的镜像加速器或者下述这个:

vi /etc/docker/daemon.json

# 进入json,改成:
{
	   "registry-mirrors": [
		    
		     "https://docker.m.daocloud.io",
		             "https://dockerproxy.com",
			             "https://docker.mirrors.ustc.edu.cn",
				             "https://docker.nju.edu.cn"
					      
					         ]
}

修改后,重启docker服务:

sudo systemctl daemon-reload
sudo systemctl restart docker

然后 通过执行 docker info 查看 mirrors 是否设置成功:

上图所示就是设置成功啦

然后,就是踩坑的地方了!!!!!

此时尝试 docker search nginx ,还是有问题,还是报这个错

但是,不要再改其他配置了,有一种可能是:search 这个命令不走国内镜像,你试一下 docker pull 这个命令呢,

如果 docker pull nginx 执行成功,那你也就不用改了,原因和我一样,就是search 这个命令的问题,,,,,

如果还是不行,那就继续,按照 (28 封私信 / 36 条消息) 解决虚拟机中的Docker无法拉取镜像 - 知乎

还需需要设置 servername :

如果不正常则执行:

sudo vi /etc/resolv.conf

写入以下内容

nameserver 8.8.8.8
nameserver 114.114.114.114

重启

sudo systemctl daemon-reload
sudo systemctl restart docker
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值