3步搞定K8s镜像加速:国内拉取慢的完整解法

发布时间:2026/9/11 12:56:02
3步搞定K8s镜像加速:国内拉取慢的完整解法 3步搞定K8s镜像加速国内拉取慢的完整解法【免费下载链接】public-image-mirror很多镜像都在国外。比如 gcr 。国内下载很慢需要加速。致力于提供连接全世界的稳定可靠安全的容器镜像服务。项目地址: https://gitcode.com/GitHub_Trending/pu/public-image-mirror拉取卡20分钟先认识这个同步加速服务Pod 反复 imagePullBackOff镜像拉取失败的常见状态gcr.io 的镜像卡 20 分钟超时——这场景太熟了。public-image-mirror 提供的 K8s镜像加速就是解法它把海外仓库的镜像同步到国内节点你不用换工具只改镜像名的写法就能拉。国内 K8s 用户、企业运维、独立开发者都适用改个前缀的事。慢在哪一笔跨境链路账海外仓库架在国外机房拉取流量要绕跨境链路DNS 解析绕路、跳数多、晚高峰国际带宽拥挤镜像拉取慢是物理距离的必然。打个比方相当于让北京的快递员跨省去东京取快递再原路寄回来。这个服务让镜像先落到国内节点你从国内K8s镜像源拉本地副本链路只剩最后一程速度自然跟得上。三步接入K8s镜像加速把名字改对就快了大多数场景只需要动三处镜像名前缀、运行时配置、集群安装配置按顺序来即可。1. 给镜像名加前缀最省事的方式原始镜像前加m.daocloud.io/后面跟源站完整地址。docker run -d -P m.daocloud.io/docker.io/library/nginx改完这条命令直接跑通白名单内的仓库通用Docker 和 K8s 里都一样无需任何客户端配置。2. 给 Docker 加一行 mirror不想逐个改镜像名就让运行时自动走加速源注意只对 docker.io 生效{ registry-mirrors: [https://docker.m.daocloud.io] }写入/etc/docker/daemon.json后重启 Docker原来的docker pull命令原样可用。Podman 用户则在registries.conf里给对应 registry 配同源的 mirror 段。3. kubeadm 配置改两行新建集群时把控制面组件的镜像仓库指过去kubeadm镜像加速一步到位dns: imageRepository: k8s.m.daocloud.io/coredns imageRepository: k8s.m.daocloud.iokubeadm 安装过程中 coredns、pause 等内置组件全部从加速源拉取建集群不再卡在控制面初始化这一步。换个场景kind、生产Pod、Containerd用 kind 起本地开发集群时指定加速后的节点镜像kind create cluster --name kind \ --image m.daocloud.io/docker.io/kindest/node:v1.22.1生产环境的 Pod清单里的 image 字段同样加前缀containers: - image: m.daocloud.io/docker.io/library/nginx:1.25Containerd 用户走 hosts 命名空间做 Containerd镜像加速配置在/etc/containerd/certs.d/registry.k8s.io/hosts.toml写入server https://registry.k8s.io [host.https://k8s.m.daocloud.io] capabilities [pull, resolve]如果集群是 kubespray 搭的配置containerd_registries_mirrors参数效果相同。前缀替换支持哪些仓库常见对照如下源站替换为备注gcr.iogcr.m.daocloud.io人工配置新源站可提 Issue 申请k8s.gcr.iok8s-gcr.m.daocloud.io已迁移到 registry.k8s.ioregistry.k8s.iok8s.m.daocloud.iodocker.iodocker.m.daocloud.io企业内网想再降一层延迟、减少对外网依赖可以部署本地缓存代理步骤见 docs/local-cache/README.md。⚠️ 踩坑记录三个细节会咬人前缀顺序别写反加前缀是m.daocloud.io/拼源站完整地址如m.daocloud.io/gcr.io/...前缀替换则是gcr.m.daocloud.io/...两套写法不能混着拼拼错了会 404。镜像是懒加载同步的你请求了才会去源站取manifest镜像元信息缓存有 1 小时延迟缓存内容只保留 30 天。所以优先用sha256:固定摘要明确版本号的 tag 次之别依赖 latest 这类可变 tag——它变更后要等重新同步期间会响应旧数据。老文档里常见的 k8s.gcr.io 已整体迁到 registry.k8s.io照旧地址写可能拉不到新组件。某个镜像始终同步不到时先确认它是否在 allows.txt 白名单里解决不了就去仓库提 Issue白名单与限流的公开说明都在那里白名单匹配校验脚本放在 hack/ 下可以对照排查格式问题。【免费下载链接】public-image-mirror很多镜像都在国外。比如 gcr 。国内下载很慢需要加速。致力于提供连接全世界的稳定可靠安全的容器镜像服务。项目地址: https://gitcode.com/GitHub_Trending/pu/public-image-mirror创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询