「大家好,我是熊猫,你的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高速无感镜像拉取

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

,

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。