问题出现:
docker pull mysql:5.7.23
错误信息: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)

分析原因:
根据错误信息,可以确定是网络原因导致的
提出假设:
1、镜像源排查
首先根据经验排查可能是由于国外的镜像源网络慢导致的
于是我把docker镜像源换成国内的镜像源
vim /etc/docker/daemon.json

详细步骤可以访问阿里云官网:如何配置“镜像加速器”

以上镜像源都已经按照步骤配置好了,但是还是出现以上问题,那么进一步排查问题。
2、系统网络问题
查看是否可以ping通百度
ping baidu.com

发现确实是网络无法ping通;
找到原因之后,接下来就是查看系统网卡配置是否正确,
vim /etc/sysconf/network-scripts/ifcfg-ens32
经过排查,果然是网卡配置出错;
接下来把网卡配置正确,就可以正常ping通了

再执行docker pull命令时,也可以正常的拉取镜像了
本文讲述了在尝试从Docker Hub拉取mysql:5.7.23镜像时遇到的网络问题。错误信息表明请求超时。首先,作者尝试更换国内镜像源,但问题依旧存在。接着,通过检查网络连通性,发现无法ping通百度,进而排查到网卡配置错误。修复网卡配置后,网络恢复正常,Docker成功拉取镜像。
1万+

被折叠的 条评论
为什么被折叠?



