51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

使用 Cloudflare 搭建 Docker Hub 镜像代理——实现国内访问docker

日志

  • 2024-09-14:更新域名解析商后重新设置CNAME值
  • 2024-08-29:无法使用镜像,需要登录dockerHub账号
  • 2024-08-10 :设置镜像代理后,必须重启 docker 生效,已加入操作记录

前言

目前国内docker所有域名都被屏蔽,造成一些玩docker的用户很是苦恼,有些好用的工具一直拉不下来,自己搭建dockerhub镜像站又耗时还得购买海外服务器,非常不划算。本文将通过简单且免费的方法来教大家如何实现国内访问docker

准备环境

  1. 注册cloudflare账户
  2. 注册github账户
  3. 购买域名(可以使用首年免费的域名,主打一个白piao)

部署

https://github.com/cmliu/CF-Workers-docker.io fork这个githup仓库,在此感谢一下作者。
打开注册好的cloudflare账户,点击Page部署,然后按照下图,选择CF-Workers-docker.io(红框部分)

  • Pages 部署:Fork连接GitHub 一键部署即可

Clip_2024-08-05_23-28-08.png
image.png

  • 选择自己的域名并解析

image.png

  • 等待解析完成,此时使用自己的域名即可访问docker界面 image.png

正常下载镜像是👇这样的

docker pull alpine

docker pull alpine/git

如何使用?

例如您的Workers项目域名为:docker.fxxk.dedyn.io

1.官方镜像路径前面加域名

docker pull docker.fxxk.dedyn.io/stilleshan/frpc:latest
docker pull docker.fxxk.dedyn.io/library/nginx:stable-alpine3.19-perl

这样子下载完成后,镜像名称是docker.fxxk.dedyn.io/library/nginx 而不是 nginx,这点需要注意。那如果需要使用原始的名称,可以使用下面这步。

2.一键设置镜像加速

修改文件 /etc/docker/daemon.json(如果不存在则创建)
SHELL

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://docker.fxxk.dedyn.io"]  # 请替换为您自己的Worker自定义域名
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

使用Tips

1、如果无法拉取镜像请登录dockerHub账户

image-20240829111627864

2、如更换域名提供商,请重新设置CNAME值

image-20240914134424832

拓展资料

网站地图 -- Lincol29 : 在这个网站地图中,你可以找到关于C#、常用生产力工具、面试面经、Docker、WordPress、RSS、等各类技术主题的教程和分享,以及对本站内容快速导航。

赞(0)
未经允许不得转载:工具盒子 » 使用 Cloudflare 搭建 Docker Hub 镜像代理——实现国内访问docker