最推荐的多源配置方式是在daemon.json中设置registry-mirrors数组,docker按序尝试,任一可用即成功;需严格json格式、重启服务,并优先排列响应快的镜像源。
直接在 daemon.json 的 registry-mirrors 字段里填一个合法的 url 数组,docker 会按顺序尝试,任一可用即成功拉取——这是最稳定、最推荐的多源配置方式。
Linux 系统:手动编辑 daemon.json
确保文件路径为 /etc/docker/daemon.json,若不存在则新建:
- 执行
sudo mkdir -p /etc/docker && sudo nano /etc/docker/daemon.json - 填入多个实测有效的镜像地址(2026 年 9 月仍稳定):
- 保存后必须重载并重启服务:
sudo systemctl daemon-reload && sudo systemctl restart docker - 注意 JSON 格式要严格合法:所有键名和字符串值必须用双引号,末尾不能有多余逗号
macOS / Windows:用 Docker Desktop 图形界面
避免命令行操作,适合新手或非 Linux 环境:
使用 JSON Schema 验证 JSON 数据,从示例 JSON 生成 schema,并将其转换为 TypeScript 接口、Python 数据类或 Markdown 文档。
-
macOS:点击菜单栏 Docker 图标 → Preferences → Docker Engine → 粘贴上面的
registry-mirrors数组 → Apply & Restart - Windows:右键任务栏 Docker 图标 → Settings → Docker Engine → 同样粘贴 → Apply & Restart
- 图形界面会自动校验 JSON 语法,出错时会高亮提示,比手写更安全
验证是否生效
运行以下命令确认配置已加载:
-
docker info | grep "Registry Mirrors"—— 输出应包含你配置的至少一个地址 - 进一步实测:
docker pull alpine:latest,观察是否明显提速且无超时 - 若输出为空或报错,大概率是 JSON 格式错误或服务未重启
企业级建议:排序与容错
多个镜像源不是随便堆砌,顺序影响实际行为:
- Docker 按数组顺序逐个尝试,首个响应快、成功率高的放前面(如企业采购的轩辕专业版或阿里云专属加速器)
- 免费公共源(如 USTC、DaoCloud)可放在后面作为兜底
- 不建议混用 HTTP 地址,全部使用 HTTPS,避免因协议降级导致失败










