跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / Bash

DockerHub 镜像加速配置指南(Windows、Mac、Linux)

DockerHub 镜像加速配置指南涵盖 Windows、Mac、Linux 环境。提供多个国内可用镜像源清单,详解 Docker Daemon、Containerd 及 BuildKit 的 registry-mirrors 配置方法。包含多源回退策略、批量测速脚本、常见问题解答及安全合规建议,解决镜像拉取慢、429 错误等问题。

萤火微光发布于 2026/1/27更新于 2026/10/2498 浏览
DockerHub 镜像加速配置指南(Windows、Mac、Linux)

DockerHub 镜像加速配置指南

适用对象:国内云服务器/办公网络拉取 DockerHub 镜像慢、易触发限速(429/Too Many Requests)的场景 用途:一键配置镜像加速、按需切换备用源、排障与测速 安全提示:第三方镜像源非官方服务,不建议用于私有/机密镜像的拉取与推送

一、可用镜像源清单(2025 年 9 月)

优先推荐(作者实测口碑好、稳定性优先)

  • https://docker.1ms.run
  • https://docker-0.unsee.tech/

其他可选(用户提供状态:正常;建议与上方推荐源搭配做备份)

  • https://docker.m.daocloud.io
  • https://ccr.ccs.tencentyun.com
  • https://hub.xdark.top
  • https://dhub.kubesre.xyz
  • https://docker.kejilion.pro
  • https://docker.xuanyuan.me
  • https://docker.hlmirror.com
  • https://run-docker.cn
  • https://docker.sunzishaokao.com
  • https://image.cloudlayer.icu
  • https://docker.tbedu.top
  • https://hub.crdz.gq
  • https://docker.melikeme.cn
  • https://xuanyuan.cloud(宣源镜像主页入口)

说明:上述大多为 DockerHub 反向代理/镜像加速端点,供 docker.io 拉取加速使用。不要加尾部斜杠(例如使用 https://docker.1ms.run,而非 https://docker.1ms.run/)。任何第三方源都可能随时间变化,建议至少配置 2~3 个镜像并保留官方回源作为兜底。

二、最稳妥的使用方式:在 Docker 守护进程里配置 registry mirrors

Windows / macOS(Docker Desktop)
  1. 打开 Docker Desktop → Settings → Docker Engine。
  2. 点击 Apply & Restart 重启生效。

将配置替换/合并为(按需增减镜像源):

{
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker-0.unsee.tech",
    "https://docker.m.daocloud.io"
  ],
  "features": {
    "buildkit": true
  }
}

验证:终端执行 docker info | findstr /i "Registry Mirrors"(Win)或 docker info | grep -A 3 "Registry Mirrors"(macOS/Linux),拉取测试:docker pull hello-world 或 docker pull busybox:latest。

Linux(dockerd / systemd)

Rootless Docker(如用 dockerd-rootless-setuptool.sh 安装):将同样的 JSON 放到 ~/.config/docker/daemon.json,然后:

systemctl --user daemon-reload
systemctl --user restart docker

重载并重启:

sudo systemctl daemon-reload
sudo systemctl restart docker

创建/编辑 /etc/docker/daemon.json:

{
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker-0.unsee.tech",
    "https://docker.m.daocloud.io"
  ],
  "live-restore": true,
  "features": {
    "buildkit": true
  }
}
containerd(含 k3s/nerdctl 等)

许多发行版/平台(如 k3s)默认用 containerd,需在其层面配置镜像加速。

  1. 验证(任选其一):
    • crictl pull docker.io/library/busybox:latest
    • nerdctl --namespace k8s.io pull docker.io/library/busybox:latest

重启:

sudo systemctl restart containerd

在 /etc/containerd/config.toml 中找到(或新增)以下段落,并替换为:

[plugins."io.containerd.grpc.v1.cri".registry]
  [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
    [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
      endpoint = ["https://docker.1ms.run", "https://docker-0.unsee.tech", "https://registry-1.docker.io"]

若没有配置文件,先生成默认模板:

sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml >/dev/null
独立 BuildKit(buildkitd)

对纯 BuildKit 环境(CI/CD 常见),在 BuildKit 层配置镜像最有效。

/etc/buildkit/buildkitd.toml:

[registry."docker.io"]
  mirrors = ["https://docker.1ms.run", "https://docker-0.unsee.tech"]

重启:sudo systemctl restart buildkit(或按你的 Supervisor 重启)。

三、两种拉取方式的区别(理解之后排障更容易)

  1. 守护进程镜像(推荐) 在 daemon.json/config.toml 里配置 registry-mirrors / endpoint 后,你仍然使用原始名称拉取:
docker pull docker.io/library/nginx:alpine

Docker 会自动优先走镜像源,失败再回源官方。

  1. 直接用镜像域名拉取(应急/测试) 不改系统配置,直接把镜像域名写在镜像名前缀:
docker pull docker.1ms.run/library/nginx:alpine

注意:不同镜像站的路径规则可能略有差异,通常 library/ 前缀仍需保留。

四、进阶:多镜像回退策略 & 最佳实践

  • 多源并行配置:把 2~4 个镜像一起写进配置,Docker/containerd 会在失败时尝试其他端点。
  • 保留官方回源:最后一个保留 https://registry-1.docker.io,避免'全部超时'导致业务不可用。
  • 按网络就近排序:将你服务器网络访问最快/最稳定的源放在列表前面。
  • 仅用于公共镜像:第三方镜像可能记录访问日志,不建议用于企业私有镜像/需要鉴权的仓库。
  • 避免 HTTP 明文:尽量使用 HTTPS;除非明确可信且内网使用,否则不要添加到 insecure-registries。
  • 登录减限速:必要时执行 docker login 使用自己的 DockerHub 账号以抑制匿名限速(不要把凭据交给第三方域名)。

五、常见问题(FAQ)

Q1:配置后还是慢/报错(TLS/证书/握手失败)?

  • 确认镜像 URL 带 https:// 且没有尾部斜杠。
  • 同步系统时间并更新 CA:sudo apt-get install --reinstall ca-certificates 或等价命令。
  • 公司代理/防火墙可能拦截 SNI,尝试换网络或更换镜像源顺序。
  • 临时用'直接用镜像域名拉取'的方式验证镜像站是否可用。

Q2:提示 Too Many Requests / 429?

  • 切换到另一个镜像源或添加更多备选。
  • 执行 docker login 使用个人账号拉取(仍建议只拉公共镜像)。

Q3:Kubernetes 节点也需要加速?

  • 如果集群 runtime 是 containerd,请在每个节点的 /etc/containerd/config.toml 配置同样的 mirrors,然后滚动重启节点的 containerd/kubelet。

Q4:如何确认加速生效?

  • docker info 能看到 Registry Mirrors 列表。
  • time docker pull busybox:latest 对比前后时延(首次拉取最具参考意义)。

六、批量测速脚本(Linux)

说明:该脚本通过访问 /v2/ 和试拉 busybox:latest 的 manifest 来做'轻量连通/响应'检测,不会大规模下载层文件;实际速度仍受网络波动与镜像站后端缓存影响。

#!/usr/bin/env bash
set -euo pipefail

MIRRORS=(
  "https://docker.1ms.run"
  "https://docker-0.unsee.tech"
  "https://docker.m.daocloud.io"
  "https://ccr.ccs.tencentyun.com"
  "https://hub.xdark.top"
  "https://dhub.kubesre.xyz"
  "https://docker.kejilion.pro"
  "https://docker.xuanyuan.me"
  "https://docker.hlmirror.com"
  "https://run-docker.cn"
  "https://docker.sunzishaokao.com"
  "https://image.cloudlayer.icu"
  "https://docker.tbedu.top"
  "https://hub.crdz.gq"
  "https://docker.melikeme.cn"
)

printf "%-34s %-10s %-s\n" "MIRROR" "V2(ms)" "NOTES"

for m in "${MIRRORS[@]}"; do
  t=$(curl -o /dev/null -s -w "%{time_total}" "${m}/v2/" || echo "fail")
  note=""
  if [ "$t" == "fail" ]; then
    note="connect error"
  else
    # 取毫秒
    t=$(awk -v n="$t" 'BEGIN{printf "%.0f", n*1000}')
    printf "%-34s %-10s %-s\n" "$m" "$t" "$note"
  fi
done

若你无权修改系统全局配置,也可把单个镜像站前缀写入镜像名测试: docker pull docker.1ms.run/library/busybox:latest

七、安全与合规小贴士

  • 第三方镜像站只用来拉公共镜像;私有仓库请使用企业自建 Harbor / 官方 DockerHub 私有库 / 公有云镜像服务。
  • 不要把企业凭据/令牌用于第三方域名。
  • 按需开启镜像内容信任(Docker Content Trust/Notary),在供应链里增加签名校验。
  • 生产环境推荐同时准备:镜像加速 + 企业级私有 Registry + 离线缓存(本地 registry mirror) 的组合。

八、故障排查清单(Checklist)

  • docker info 是否显示了 Registry Mirrors 并且含你的新镜像源
  • curl https://<mirror>/v2/ 是否返回 HTTP 200/401/403(能连通)
  • DNS 能否解析镜像站;必要时尝试改用公共 DNS(如 223.5.5.5/119.29.29.29)
  • 环境是否存在公司代理/网关拦截(证书替换导致 TLS 校验失败)
  • 列表顺序是否把最优镜像放在最前,且保留了 https://registry-1.docker.io 兜底
  • 系统时间、CA 证书是否正确

九、一页抄作业(可直接粘贴)

dockerd(/etc/docker/daemon.json)
{
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker-0.unsee.tech",
    "https://docker.m.daocloud.io"
  ],
  "features": {
    "buildkit": true
  }
}
containerd(/etc/containerd/config.toml)
[plugins."io.containerd.grpc.v1.cri".registry]
  [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
    [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
      endpoint = ["https://docker.1ms.run", "https://docker-0.unsee.tech", "https://registry-1.docker.io"]
Docker Desktop(Settings → Docker Engine)
{
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker-0.unsee.tech",
    "https://docker.m.daocloud.io"
  ],
  "features": {
    "buildkit": true
  }
}

目录

  1. DockerHub 镜像加速配置指南
  2. 一、可用镜像源清单(2025 年 9 月)
  3. 二、最稳妥的使用方式:在 Docker 守护进程里配置 registry mirrors
  4. Windows / macOS(Docker Desktop)
  5. Linux(dockerd / systemd)
  6. containerd(含 k3s/nerdctl 等)
  7. 独立 BuildKit(buildkitd)
  8. 三、两种拉取方式的区别(理解之后排障更容易)
  9. 四、进阶:多镜像回退策略 & 最佳实践
  10. 五、常见问题(FAQ)
  11. 六、批量测速脚本(Linux)
  12. 七、安全与合规小贴士
  13. 八、故障排查清单(Checklist)
  14. 九、一页抄作业(可直接粘贴)
  15. dockerd(/etc/docker/daemon.json)
  16. containerd(/etc/containerd/config.toml)
  17. Docker Desktop(Settings → Docker Engine)

更多推荐文章

查看全部
  • OpenClaw 龙虾机器人本地部署与配置指南
  • C++ STL list 容器底层实现分析
  • 使用 OpenClaw 与飞书构建 7x24 小时自动化运维机器人
  • 职场人士如何自学 Python:目标规划与学习路径
  • 基于 SpringBoot 的图书租借系统设计与实现
  • 声源定位算法基础:CBF(延时求和波束形成)
  • QA 一来,大家都要靠边站
  • Java 集成 Umi-OCR 实现本地图片文字提取
  • LangChain 实战:基于网页数据的 RAG 问答及来源溯源
  • Google 秘密计划曝光:AI 或取代人类程序员敲代码
  • 医疗 AI 场景下的模型融合与集成策略实战
  • 医疗 AI 多智能体资源调度:用 Python 构建 MCU 资源池
  • OpenClaw 深度解析:构建从认知到行动的 AI 智能体框架
  • Windows 11 资源管理器增强工具 QTTabBar 中文优化版安装指南
  • AIGC 核心技术解析:生成对抗网络(GAN)应用与原理
  • VS Code GitHub Copilot 登录报错“尚未完成授权”解决方案
  • Spring Boot 集成本地 OCR 服务模块实战
  • Verilog 零基础入门:语法、仿真与 FPGA 实战
  • 基于 MP-GWO 灰狼优化算法的多智能体无人机航迹规划
  • 程序员接外包私活平台推荐:主流接单网站盘点与避坑指南

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online