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安装rocketmq报错如下:

docker pull rocketmqinc/rocketmq
Using default tag: latest
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没配置好.

解决方法:


‌步骤二:优化 DNS 配置(常见且有效)‌

DNS 解析失败是导致此错误的常见原因。为 Docker 或系统配置可靠的公共 DNS 服务器。

修改系统 DNS‌(临时):
sudo vim /etc/resolv.conf
在文件开头添加:
nameserver 8.8.8.8
nameserver 8.8.4.4
# 国内网络可额外添加
nameserver 114.114.114.114
保存后,重启网络服务或直接重启 Docker。

为 Docker 守护进程指定 DNS‌(推荐,更持久):
sudo vim /etc/docker/daemon.json
添加 dns 配置项:

json
{
  "dns": ["8.8.8.8", "114.114.114.114"]
}
保存后,重启 Docker 服务:
sudo systemctl restart docker
步骤三:配置国内镜像加速器(针对国内网络环境最有效)‌ 直接连接 Docker Hub 可能因网络延迟或屏蔽而不稳定。使用国内镜像加速器可以极大提升拉取速度和成功率。 编辑 Docker 配置文件: bash
sudo vim /etc/docker/daemon.json 添加 registry-mirrors 配置项。如果文件已存在 dns 配置,请合并到同一个 JSON 对象中。 json { "registry-mirrors": [ "https://docker.mirrors.ustc.edu.cn", "https://hub-mirror.c.163.com", "https://mirror.baidubce.com" ] } 重启 Docker 服务并验证配置: sudo systemctl restart docker docker info | grep -A 5 "Registry Mirrors"

重启linux服务器。

然后再执行安装命令,成功结果如下。

image

 

posted @ 2026-06-22 11:46  黎明的太阳  Views(6)  Comments(0)    收藏  举报