最有效办法是三步配置国内镜像加速器:写对 /etc/docker/daemon.json、执行 systemctl daemon-reload && systemctl restart docker、用 docker info | grep "registry mirrors" 验证生效;推荐填入 https://docker.xuanyuan.me 等2026年实测稳定源,多源配置防单点故障,json格式需严格校验。

直接配国内镜像加速器是最有效、最常用的办法,三步就能搞定:写对 /etc/docker/daemon.json、重载并重启 Docker 服务、用 docker info 验证生效。只要格式、协议、路径不出错,90% 的超时问题当场解决。
确认当前 Docker 状态和网络基础
别急着改配置,先看清楚问题在哪:
- 运行
systemctl is-active docker,返回active才说明服务在跑 - 执行
docker info | grep "Registry Mirrors",输出为空或显示[]就代表还没配加速源 - 用
nslookup registry-1.docker.io测试 DNS 是否通——能快速返回 IP 地址才算正常;卡住或失败,后面就得加 DNS 配置
编辑 daemon.json 填入稳定加速地址
推荐用终端操作(避免宝塔等图形界面因权限或路径保存失败):
- 创建目录并打开配置:
sudo mkdir -p /etc/docker && sudo nano /etc/docker/daemon.json - 填入以下内容(2026 年实测稳定、免注册、全平台兼容):
注意:每条地址必须以 https:// 开头,末尾不加 /;多个地址用英文逗号分隔;整个 JSON 必须合法(可用 sudo jq . /etc/docker/daemon.json 快速校验)。不要只填一个源——单点故障风险高,2026 年已有高校源短时同步延迟案例。
重载配置并验证是否真正生效
改完文件不能只 restart Docker,必须先重载 systemd 配置:
- 依次执行:
sudo systemctl daemon-reload→sudo systemctl restart docker - 验证是否加载成功:
docker info | grep "Registry Mirrors" -A 1,应清晰看到你刚填的三个域名 - 最后试拉一个镜像:
docker pull ubuntu:22.04,明显变快且无 timeout 报错即成功
仍失败?加 DNS 或临时代理兜底
如果加速器配了还是卡在 TLS 握手或域名解析,说明宿主机 DNS 不可靠:
- 在
daemon.json中追加"dns": ["8.8.8.8", "1.1.1.1"]字段,再重载重启 - 企业内网有代理时,可建
/etc/systemd/system/docker.service.d/http-proxy.conf,写入代理环境变量,绕过全局配置直连加速源











