docker拉取镜像失败
问题描述
在使用docker进行镜像拉取的时候,出现拉取不下来,或者连接超时问题,就会报错
Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
,导致无法使用docker。
问题分析
镜像拉不下来,无非就是镜像源访问不到,网络不通,现在基本网络不通的情况不存在,如果遇到网络不通的时候,ping一下百度。大概率的问题基本上是镜像源无法访问。所以直接搞镜像源。
问题处理
操作系统是CentOS7
- 安装完 docker 之后,会有一个配置文件。
- 查看
vim /etc/docker/daemon.json
文件。 - 未配置之前是这样子的
{
"log-driver": "json-file",
"log-opts": {
"max-size": "200m",
"max-file": "3"
},
"data-root": "/home/docker"
}
- 加上镜像源地址(就是DockerHub的镜像服务)
{
"log-driver": "json-file",
"log-opts": {
"max-size": "200m",
"max-file": "3"
},
"data-root": "/home/docker",
"registry-mirrors": [
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc"
]
}
- 重启docker
systemctl daemon-reload
systemctl restart docker
# 查看配置是否生效
docker info