Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

2024-06-28 19:19:13 56点赞 390收藏 41评论

大家好,我是熊猫,你的NAS领航员。NAS不只是存储那么简单,数码也可以是生活,关注我,给你的生活加点'技'趣!

引言

自从国内的各大Docker镜像源被下架后,NAS想要拉取个镜像真的不容易,不过网友们可不是吃素的,此路不通那就换一条路。于是现在有各种办法能让我们拉取镜像,例如通过套CF的形式,实现拉取镜像,不过域名容易被DNS污染导致不能用;还可以通过自建镜像站的形式,不过需要什么镜像都需要先去同步到自己镜像源,比较麻烦;或者干脆直接让NAS出国也行,但是这会导致NAS上的其他容器或者项目也出国。

Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

那么有没有一种方法,既可以让NAS不出国,又能实现不怕DNS污染,同时拉取镜像也方便快捷的方式呢?还真有,这里感谢粉丝姜不吃提供的信息来源,同时感谢作者wzshiming的项目。

部署过程

首先我们需要在NAS上养一只小猫,同时还需要这只猫有对应的猫粮。猫很好养,但是猫粮怎么来就需要大家自行想办法了,不过我相信既然都玩上NAS以及Docker了,那么猫粮应该不缺。

准备好养猫的材料,docker-compose文件,内容如下,其中将猫改为小猫真名就可以了。还要注意猫的端口以及路径,根据自己环境来设置。

version: '3'

services:

猫:

container_name: 猫

image: laoyutang/猫-and-dashboard:latest

restart: always

logging:

options:

max-size: 1m

volumes:

- /volume1/docker/猫/config.yml:/root/.config/猫/config.yaml

ports:

- "18080:8080"

- "17890:7890/tcp"

- "17890:7890/udp"

这里的config.yaml文件就是猫粮,这个看你在哪个地方领养的猫,直接去领养猫的地方拿猫粮就可以了。

Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

猫和猫粮解决了之后启动容器,这时候就有一个猫窝了,猫窝的端口为18080,或者你定义的其他端口。如果你的猫粮小猫肯吃,那么猫窝中就能看到小猫每天出去玩的各种路径了,这里就不一一展示了,接下来我们利用小猫拉取镜像。

Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

需要注意的事该项目最好用于个人使用,毕竟要用到你自己家里的带宽,公开的话估计会比较卡。准备好docker-compose文件,参考图中或者参考熊猫这里的设置,其中environment环境变量的值为小猫出去玩的路径和号码,根据自己情况更改,例如熊猫这里就是:

version: '3'

services:

crproxy:

image: ghcr.io/daocloud/crproxy/crproxy:v0.8.0

container_name: crproxy

restart: unless-stopped

ports:

- 4321:8080

- 4322:8080

command: |

--acme-cache-dir=/tmp/acme

--acme-hosts=*

--default-registry=docker.io

tmpfs:

- /tmp/acme

# 非必须, 如果这台服务器无法畅通的达到你要的镜像仓库可以尝试配置

environment:

- https_proxy=http://IP:9870

- http_proxy=http://IP:9870

如何使用

配置好所有之后我们启动容器,这时候尝试docker pull镜像的时候可以这样:docker pull 127.0.0.1:4321/idootop/feiyu:latest。你会发现速度飞快(根据你猫的品种决定),同时拉取畅通无阻。

Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

此时我们就已经可以拉取镜像了,如果你有域名,那么我们还可以通过域名+端口的形式拉取镜像,例如如果熊猫有一个panda.com的域名,那么就可以通过docker pull panda.com:4321/idootop/feiyu:latest,当然前提是你将其域名做了解析。

不过需要注意的是,目前测试下来发现群辉、极空间暂不支持端口情况下作为镜像源使用,但威联通目前是支持的(威联通YYDS)。同时第三方的Docker容器管理,大都支持带端口的情况下拉取镜像,例如portainer、1Panel这一类。

Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

当然了有没有办法解决呢?自然也是有的。进阶玩法就是通过将域名绑定到render上实现使用80和443端口,render每个月免费流量为100G,用来拉取镜像什么的也是完全够用了,此方法可以参考项目k0baya/QLonRAILWAY

Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

这时候我们就可以直接使用我们的域名来拉取镜像,不需要加端口什么的了,同时这个网址也可以直接添加到任意NAS的镜像源设置中去。

Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

切记不要将域名公开,目前网友自建的大部分镜像源都因为使用人太多,要么限速要么关闭了,所以想要自己体验高速,就不要公开。当然如果你有几个好大儿和你一样都玩nas,那么可以一起用。

总结

本期内容稍微比较隐晦,如果有不懂的,不要来问。懂的自然懂,不懂的问我我也不能回答。

以上便是本期的全部内容了,如果你觉得还算有趣或者对你有所帮助,不妨点赞收藏,最后也希望能得到你的关注,咱们下期见!

Docker镜像拉取最优解!养一只小猫,利用crproxy高速无感镜像拉取

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
41评论

  • 精彩
  • 最新
  • 置顶 如何在nas上养一只猫🐱

    校验提示文案

    提交
    [欢呼] 来了来了~

    校验提示文案

    提交
    猫在哪

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 爱快上用下一跳网关指向富强网关,需要拉docker时开启,不需要用时关闭下一跳,不用这么复杂。

    校验提示文案

    提交
    同志 [就是你] [就是你] [就是你] [就是你] [就是你] [就是你]

    校验提示文案

    提交
    收起所有回复
  • 现在不要这么麻烦了 可以搭建一个istoreos虚拟机 虚拟机安装istoreos增强 就可以直接拉起镜像 然后打包镜像再去nas恢复就好 这样也是麻烦但是使用门槛较低

    校验提示文案

    提交
  • 都有代理了还要多此一举干嘛。直接代理就行了。

    校验提示文案

    提交
    对的

    校验提示文案

    提交
    搞清楚,一个是代理nas,一个是只用于拉取镜像

    校验提示文案

    提交
    收起所有回复
  • 问题是这只猫也要docker拉镜像

    校验提示文案

    提交
    可以直接用别人搭建好的先下载

    校验提示文案

    提交
    收起所有回复
  • 额。用了这个是不是唯一捞的DC是不是就不能检测更新了。

    校验提示文案

    提交
    这和dc没关系啊

    校验提示文案

    提交
    收起所有回复
  • NAS就算出了国又能咋地

    校验提示文案

    提交
    如果你有pt或者其他一些服务,就不适合直接nas出国

    校验提示文案

    提交
    哈哈哈,可以有多台nas,分别去不同的地方。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 你的行为涉嫌违法,已被我局列为网上在逃人员。请立刻到当地派出所投案。

    校验提示文案

    提交
    你要被抓

    校验提示文案

    提交
    收起所有回复
  • 这个猫粮是不是需要钱买啊?我就是在软路由上直接养了一只猫

    校验提示文案

    提交
  • 特别需要这个 顶一下 收了

    校验提示文案

    提交
  • 支持一下。关闭了才发现自己折腾半天常用的也就那么点。

    校验提示文案

    提交
  • 其实应该叫一条鱼

    校验提示文案

    提交
  • 搭建一个glider最合适。

    校验提示文案

    提交
  • 小白,止步于此了 [高兴]

    校验提示文案

    提交
  • 透明代理最通用省心

    校验提示文案

    提交
  • 支持一下

    校验提示文案

    提交
  • 两个容器都部署成功了,拉取镜像的时候提示:
    docker pull 127.0.0.1:4321/idootop/feiyu:latest
    Error response from daemon: received unexpected HTTP status: 500 Internal Server Error
    [无奈]

    校验提示文案

    提交
  • 我还以为是什么新东西,原来还是代理。直接在systemd那给docker daemon那挂代理不就行了吗。

    校验提示文案

    提交
  • 我的小喵咪养在了软陆游里面,qnap的docker稳定性不如前者

    校验提示文案

    提交
  • 直接起一个wrt代理一下就行了,还能有其他功能,感觉没必要整这个。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

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