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) 报错信息。
① 问题描述:
在执行以下命令时遇到错误:
sudo docker pull mysql
错误信息如下:
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在尝试从默认的Docker镜像仓库(registry-1.docker.io)下载镜像时,由于网络问题导致超时。
③ 解决方案:
修改Docker的配置文件/etc/docker/daemon.json:
sudo vim /etc/docker/daemon.json
在打开的配置文件中,添加registry-mirrors字段,更改Docker的默认镜像仓库:
{
"registry-mirrors": [
"https://docker.m.daocloud.io"
]
}
重新加载Docker的配置:
sudo systemctl daemon-reload
重启Docker服务:
sudo systemctl restart docker
④ 结果验证:
再次查看docker状态:
docker已经无出现报错信息了。
再次pull镜像:
已经可以正常拉取镜像了。