配置国内加速源后仍然无法拉取镜像
配置国内加速源后仍然无法拉取镜像
- 配置国内加速源后仍然无法拉取镜像
- 问题现象
- 问题排查
- 解决方案
- 方案一:更换国内镜像源地址
- 方案二:登录阿里云镜像源使用制品中心的镜像
配置国内加速源后仍然无法拉取镜像
问题现象
已经配置了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 info
确认是否已配置docker镜像源docker info |grep 'Registry Mirrors:' -A 5
已配置阿里云镜像源加速,但是看报错仍请求了国外的镜像源
-
使用
docker pull --debug
查看拉取镜像的日志docker 17.06以上版本支持
docker pull --debug
查看拉取镜像的过程日志,如果是17.06版本一下,可以另开一个shell窗口使用journalctl -u docker -f
查看日志journalctl -u docker -f
可以看到docker确实是首先吗访问阿里云加速地址,发现访问错误后再访问dockerhub镜像源
-
查看阿里云变更公告,发现阿里云源支持发生了变更
【产品变更】ACR镜像加速器功能调整公告
不再公开支持镜像源
解决方案
方案一:更换国内镜像源地址
参考Docker/DockerHub 国内镜像源加速列表(长期维护-8月15日)https://blog.csdn.net/Numb_ZL/article/details/150412122?fromshare=blogdetail&sharetype=blogdetail&sharerId=150412122&sharerefer=PC&sharesource=Numb_ZL&sharefrom=from_link
方案二:登录阿里云镜像源使用制品中心的镜像
-
登录阿里云容器镜像控制台,复制加速器地址
-
在
/etc/docker/daemon.json
配置加速器地址 -
搜索阿里云制品中心的镜像
-
使用阿里云镜像拉起nginx容器
docker run --name some-nginx -d -p 8080:80 registry.openanolis.cn/openanolis/nginx:1.14.1-8.6 docker container ls