Docker拉取报错Error response from daemon问题解决

3,674 阅读1分钟

1. 背景

这里博主的docker是运行在本地的虚拟机上,拉取镜像时一直没反应

[root@k8s-master yunmiao]# docker pull mysql:8
Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded (Client.Timeout exceeded while awaiting headers)

使用docker search list指令也是一直超时,查阅文章发现好像是最近dockerhub原先提供服务的站点关闭了

2. 准备

也是收集了网络上的解决方案,最终解决方案如下,供大家参考

需要在宿主机上能够访问VPN

3. 过程

配置镜像加速

在阿里云的容器镜像服务中配置国内镜像加速

image.png 编辑/etc/docker/daemon.json添加

{
    "registry-mirrors": ["你的镜像地址"]
}

配置docker代理

sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf

[Service]
Environment="HTTP_PROXY=http://{本地代理IP:端口}"
Environment="HTTPS_PROXY=http://{本地代理IP:端口}"

重新加载配置重启docker即可

sudo systemctl daemon-reload
sudo systemctl restart docker

4. 结语

如果根据上述方法仍然不行的话,可以尝试给虚拟机也加上系统代理试试