Docker Hub Mirror 终极解决方案——0成本,超高速!

CNB Docker Mirror (cdm)

CNB Docker Mirror 是一个基于 CNB 的 Docker 镜像加速工具,提供本地镜像加速功能。

功能特性

  • 镜像加速:在本地启动连接到 CNB 环境的 Docker 镜像加速服务,然后通过配置 Docker 客户端实现镜像加速下载
  • 自动重连:镜像加速服务具备自动心跳保活和断线重连机制

使用指南

1 创建 Token

  1. 访问 https://cnb.cool/profile/token/create 创建 Token
  2. 确保 Token 具有以下权限:
    • repo-cnb-trigger:rw
    • repo-cnb-detail:r

2 创建仓库

  1. 在 CNB 上创建一个公开仓库(确保有 main 分支),仓库名为 {CNB_REPO},如 Anyexyz/cdm/runtime
  2. 此仓库将用于存储同步的镜像或者启动云开发环境

提示:建议创建独立的顶级组织以及在该组织下创建仓库

3 使用 docker-compose 运行

bash 复制代码
cat >> docker-compose.yml <<EOF
services:
  cdm:
    container_name: cdm
    image: docker.cnb.cool/anyexyz/cdm/docker-mirror:latest-linux-amd64
    ports:
      - "50000:50000"
    environment:
      - CNB_TOKEN=${CNB_TOKEN}
      - CNB_REPO=${CNB_REPO}
    restart: unless-stopped
EOF

注意:请确保同时设置CNB_TOKEN和CNB_REPO环境变量,否则程序将无法正常运行。

4. 配置 Docker 客户端

  1. 编辑 Docker 客户端配置文件(通常为 /etc/docker/daemon.json
  2. 添加以下内容:
json 复制代码
{
  "insecure-registries": [
    "0.0.0.0:50000"
  ],
  "registry-mirrors": [
    "http://0.0.0.0:50000"
  ]
}
  1. 重启 Docker 服务:
bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker

特性说明:镜像加速服务启动后会自动与 CNB 建立心跳连接以保持会话。当检测到 CNB 断开(CNB 会在 16 小时后强制关闭环境)时,服务会自动重新创建加速环境并重启加速服务。

注意事项

  • 确保仓库为公开访问
  • Token 请妥善保管,不要泄露
  • 建议使用独立组织管理镜像仓库,便于权限管理

问题反馈

如有问题或建议,请提交 Issue。

支持作者

https://cnb.cool/users/Anye/appreciate

致谢

  • 感谢 CNB 提供的强大功能和稳定环境,使得这个工具得以实现。

  • 感谢 xiaofei 大佬原项目 提供思路

相关推荐
虎头金猫15 小时前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
分布式存储与RustFS16 小时前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
AI职业加油站17 小时前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
此冬歌咏17 小时前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
玉&心18 小时前
通过Arthas在线诊断K8S中的内存及JVM等使用情况
docker·k8s·arthas
xing-xing18 小时前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
-梅18 小时前
linux(8) 软硬链接
linux·运维·服务器
赵文宇(温玉)18 小时前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang18 小时前
上传本地镜像到harbor中
docker·容器·持续部署
张洛闻Eren19 小时前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github