Docker镜像拉取解决方案合集,总有一款适合你。

2024-12-10 17:08:07 230点赞 1022收藏 55评论

大家好,我是羊刀仙。

2024年06月的某个时刻,对于很多国内的Docker爱好者来说天都塌了,包括玩NAS的、各类国内服务器的~

因此我们有必要自建Docker镜像服务,可参考本文汇总的几个方案,都很好用Docker镜像拉取解决方案合集,总有一款适合你。

如果你会魔法,可以忽略Docker镜像拉取解决方案合集,总有一款适合你。

不过感兴趣的朋友也可以看看,在评论区留下你的妙法Docker镜像拉取解决方案合集,总有一款适合你。

自建加速常常会用到域名,我之前也发布过免费域名的申请流程,刚好之前的域名到期,这下可用上啦~本文会提供一个我自建的加速地址,就是用的这个域名。

考虑到各种问题,本文将不会出现直链,请大家看图中标注。


🚀 方案一 自建Cloudflare Workers


⚠️ 前置需求:注册一个Cloudflare,域名一枚(由Cloudflare托管)。

优点:几乎零成本。CloudFlare拥有全球化的CDN网络,加速效果很不错;

劣势:据说 Workers 的政策说明不能做代理,单个服务访问过多有可能封禁。

因此建议大家将配置进行优化,并且部署完毕后完全自用,不要对外开放。

这里也有一个类似的项目,可以做参考。

Docker镜像拉取解决方案合集,总有一款适合你。

🚀 方案二 自建镜像加速服务:Docker-Proxy


自建Docker镜像加速服务,基于Docker Registry 项目一键部署Docker、K8s、Quay、Ghcr、Mcr、Nvcr等镜像加速管理服务。支持免服务器部署到RenderKoyeb。

其一 部署到Render(完全免费)

⚠️ 仅需要注册一个Render账户,详情请看文章。

⚠️ 特别说明:作者dqzboy,大大的Docker Hub仓库账号已被Render特殊对待,建议大家先把镜像下载到自己本地,然后上传到自己的Docker hub仓库。

✅ 关于如何将镜像上传至自己的Docker hub仓库:

打开终端输入以下命令并按提示输入你的 Docker Hub 用户名和密码:

docker login

使用 docker pull 命令拉取上面的镜像,这里以 dqzboy/mirror-hub:latest 举例:

docker pull dqzboy/mirror-hub:latest

给拉下来的镜像打一个新标签,使其指向你的 Docker Hub 用户名。假设你的 Docker Hub 用户名是 yourusername,你可以使用以下命令:

docker tag dqzboy/mirror-hub:latest yourusername/mirror-hub:latest

使用 docker push 命令上传标记的镜像到你的 Docker Hub 仓库:

docker push yourusername/mirror-hub:latest

上传完成后,你可以登录到 Docker Hub 网站,查看你的仓库中是否已经存在刚刚上传的镜像。

其二 Docker部署至海外VPS

⚠️ 前置需求:域名一枚并由Cloudflare托管,海外VPS一个。

除了海外VPS可能需要花钱,没什么缺点。

这种部署方式,整个流程可能看起来稍显繁琐,但是极为稳定,个人较为推荐。


🚀 方案三 直接利用海外VPS反向代理


⚠️ 前置需求:海外VPS一个,域名一枚并解析至该服务器上。

为了方便演示并简化流程,我直接使用了 Nginx Proxy Manager(Nginx的图形化反代工具)。

该方案比较简单且直接,也是我较为推荐的方法。


💡使用方法


经过我们的不懈努力,终于得到了镜像加速地址。图中地址自取,大家可以免费拿去用。

Docker镜像拉取解决方案合集,总有一款适合你。

威联通NAS用户可以在存储库中按照上图所示,直接添加新的存储库即可。

如果通过Docker Compose部署仅需修改以下位置:

旧:images: linuxserver/emby 新:images: 域名/linuxserver/emby

如果通过常规的SSH控制台拉取镜像:

原命令:docker pull linuxserver/emby 现命令:docker pull 域名/linuxserver/emby

也可在 docker 的 daemon.json 配置文件中添加上代理域名,然后重启docker程序:

vim /etc/docker/daemon.json # 输入该命令后进行进入编辑界面 # 切换成英文状态进行编辑 { "registry-mirrors": ["https://这里改为上面的域名"], "log-opts": { "max-size": "100m", "max-file": "5" } } # 编辑完毕后,按ESC并回车,同时按shift和冒号,输入wq并回车即可保存退出 # 重启docker后生效 systemctl restart docker

如果你有多个加速地址:

{ "registry-mirrors": [ "https://mirror1.example.com", "https://mirror2.example.com", "https://mirror3.example.com" ], "log-opts": { "max-size": "100m", "max-file": "5" } } # 重启docker后生效 systemctl restart docker


Docker镜像拉取解决方案合集,总有一款适合你。

🎉最后


觉得麻烦或者实在搞不懂的朋友,可以自取文中我自建的加速地址应急。

评论区欢迎各位留言交流。

如果大伙儿觉得本篇内容还不错,别忘了三连支持下,能点点关注就更好了!后续我还会持续分享各类教程以及有趣好玩的项目。

感谢观看,本文完~

展开 收起
55评论

  • 精彩
  • 最新
  • 我就是在甲骨文上部署呢,反向代理,相当稳定好用,速度也是嗖嗖的

    校验提示文案

    提交
    甲骨文我嫌麻烦,一直没去白嫖,直接付费了 [喜极而泣]

    校验提示文案

    提交
    收起所有回复
  • xyz域名需要实名认证吗

    校验提示文案

    提交
    通过国内服务商申请的都需要

    校验提示文案

    提交
    收起所有回复
  • 我是直接istoreos开梯子,然后拉docker

    校验提示文案

    提交
    最舒服的办法

    校验提示文案

    提交
    收起所有回复
  • 碎银来啦。

    校验提示文案

    提交
  • 你们用个docker怎么会这么复杂。飞牛里直接就能下,群晖里临时在网络里勾上科学ip地址。都玩docker还会没有科学上网?

    校验提示文案

    提交
    还真不是全都有,相信我😂

    校验提示文案

    提交
    老哥,细说一下群晖是怎么搞

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 没搞懂,要拉取Docker镜像,就要Cloudflare接管域名,要使用Cloudflare,又要要用到Docker拉镜像,这不是死循环吗?

    校验提示文案

    提交
    建议你多看几遍

    校验提示文案

    提交
    收起所有回复
  • 用的cloudflare workers速度能接受,唯一要注意的就是可能被人扫了之后疯狂恶意刷请求,毕竟免费版有请求次数限制,需要利用waf屏蔽一下

    校验提示文案

    提交
    今天仔细看了一下,这个明显违反协议了。。。我已经删除我的works保平安了 [皱眉] [皱眉] [皱眉]

    校验提示文案

    提交
    嗯 文章里写了 可以用我文末自建的加速 地址

    校验提示文案

    提交
    收起所有回复
  • cloudfire慢到死

    校验提示文案

    提交
    还好吧,docker用一下。也不是天天用

    校验提示文案

    提交
    收起所有回复
  • 百度一下就行,能找到一大堆 [龇牙]

    校验提示文案

    提交
  • 来看看怎么操作

    校验提示文案

    提交
  • 来啦

    校验提示文案

    提交
  • 阿里云免费300不够么

    校验提示文案

    提交
  • 谢谢分享,看看学习学习经验,不过现在越来越懒了,啥都没有意思。

    校验提示文案

    提交
  • 看一看

    校验提示文案

    提交
  • [棒棒哒] [棒棒哒] [棒棒哒] [棒棒哒] [棒棒哒]

    校验提示文案

    提交
  • 111

    校验提示文案

    提交
  • 学习一下

    校验提示文案

    提交
  • 进来看看啦

    校验提示文案

    提交
  • 很好,有些源下载很慢。

    校验提示文案

    提交
  • 111

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
1.0K
扫一下,分享更方便,购买更轻松