tx

熊猫不是猫QAQ

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

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

引言

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

DockerDocker

那么有没有一种方法,既可以让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文件就是猫粮,这个看你在哪个地方领养的猫,直接去领养猫的地方拿猫粮就可以了。

猫窝猫窝

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

部署文件部署文件

需要注意的事该项目最好用于个人使用,毕竟要用到你自己家里的带宽,公开的话估计会比较卡。准备好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。你会发现速度飞快(根据你猫的品种决定),同时拉取畅通无阻。

镜像拉取镜像拉取

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

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

威联通牛威联通牛

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

进阶攻略进阶攻略

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

直接拉取直接拉取

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

总结

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

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

版权声明 ▶ 本文作者:panda
▶ 本文链接:https://panda995.xyz/network/5020.html
▶ 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行核实删除。
▶ 转载本站文章需要遵守:商业转载请联系站长,非商业转载请注明出处!!
仅有 1 条评论
user 编辑评论信息
插入图片

隐私评论
  1. @
    DengQN 7月1日
    Windows 10 · Chrome 126 · 广西南宁市 电信

    直接部署个harbor, 创建个代理库就好了,平时还能用来维护自己的镜像