威联通NAS如何搞定Git命令?教你免费加速GitHub,告别拉取失败!
大家好,我是飘雷。
自从双11期间入手了威联通最新的旗舰NAS Qu805后,近期一直在兴致勃勃地研究如何部署各种有趣的docker。
在这个过程中,我发现GitHub上有不少开源项目在部署时是需要把项目文件clone到本地的,比如前几天介绍过的新闻推送神器TrendRadar等等。

由于我没给家里的路由器施加魔法,所以NAS本身是基本无法连通GitHub的。此前我采用的方法是先从GitHub网页中下载项目的压缩包,解压后再上传到NAS里,在远程操作的时候感觉还是有点烦人,毕竟上传文件本身就要占用一些时间。

经过一番折腾,我找到了一劳永逸解决这个问题的方法,今天就来为大家分享我总结出的这3个威联通NAS使用技巧:
1.如何使用Git命令;
2.如何安装第三方软件源;
2.如何合法合规加速GitHub项目的下载速度。
一、如何在威联通NAS中使用Git命令
威联通NAS的固件实际是精简版的Linux系统,直接使用Git命令时是没有反应的。
如果你向AI提问的话,AI可能会告诉你,得先给NAS安装Entware,然后用opkg install命令安装Git工具才行。
这个方法我尝试过了,确实可以用,但操作起来比较耗时麻烦,而且每次SSH会话时都需要加载Entware自带的配置文件, 非常不便,很不推荐。
所幸威联通NAS还有更简单的安装方法,可以通过直接以套件的方式安装Git工具,下面我为大家详细介绍两种实现路径。

1.通过APP Center下载
第一种方法是使用威联通的APP Center来下载Git工具,为了实现这个操作,我们需要启用第三方的软件源(类似群晖的矿神SPK套件源)。
首先打开威联通的APP Center,点击右上角的“设置”,然后启用“允许在没有有效数字签名的情况下安装应用程序“

接着点击“程序来源”,如下图所示,名称部分随便填写,URL处填写:
https://www.myqnap.org/repo.xml
添加后如下图所示:

接着我们点击下图中左侧箭头所指向的部分,进入MyQNAP这个第三方软件社区,然后点击右上角的放大镜图标:

在搜索框中输入”git“后,即可看到下图中的QGit工具,直接点击安装即可。

需要说明的事,MyQNAP的服务器处于国外,QGit套件本身的体积有将近300MB,所以在没有魔法的情况下,下载速度会非常慢,所以这就引出了下面我们要讲的手动安装方法。
2.手动上传套件安装
除了使用威联通App Center下载QGit套件以外,我们还可以直接去MyQNAP的官网上手动下载套件,在科学加持下的速度要快得多。
注意在下载时要分清x86、ARM64等版本,像Qu805、Qu605、Qu405等最新的旗舰直接下载x86版本即可。

套件下载成功后,后缀名为qpkg,我们进入App Center,点击右上角的下载按钮,选择“手动安装”:

在弹出的页面中上传我们刚才下载的套件安装包,再点击“安装”即可。

安装好QGit套件后,我们使用SSH登录NAS,输入git --version,如果正常显示版本,就说明Git工具已经安装好了。

二、FastGithub
我们在国内访问GitHub时,经常遇到DNS污染的问题,即便是安装了Git工具,我们使用NAS直接clone GItHub项目时也很容易出现拉取失败的问题。
针对这种情况,我们可以在NAS上部署一个叫FastGithub的项目,可以在不爬墙的情况下对GitHub进行加速。
FastGitHub 不是微屁恩,也没有原本不存在的“魔法通道”,它的原理其实很简单,内部记录了GitHub在全球所有公开的服务器IP地址,在使用时快速扫描这些 IP,看哪个能连通、哪个速度快,就引导我们连接哪个,一切都合理合法。

三、FastGithub威联通NAS部署教程
首先我们要在NAS上给FastGithub建立映射目录,这里我选择在/share/Container下新建fastgithub文件夹,并在其中新建了cacert和build_data两个文件夹,用于保存配置文件。

接下来登录威联通NAS后台,打开Container Station容器工作站,点击左侧的”应用程序“,然后点击右侧黑色”创建“按钮。

在弹出的代码输入框中,我们输入以下YAML代码。注意里面的注释部分,像映射目录之类的选项需要大家根据自己的实际情况进行修改:
services:
fastgithub:
image: slcnx/fastgithub:latest
container_name: fastgithub
restart: always
network_mode: host
# 环境变量
environment:
- TZ=Asia/Shanghai
- FASTGITHUB_DNS_ENABLE=false
# 目录挂载 (关键步骤)
# 格式:NAS本地路径:容器内路径
volumes:
# 将证书和配置持久化到 NAS 硬盘
- /share/Container/fastgithub:/app/data
- /share/Container/fastgithub/cacert:/fastgithub/cacert/
sample:
depends_on:
- fastgithub
image: slcnx/ubuntu:18.04
volumes:
- /share/Container/fastgithub/cacert:/tmp/cacert # 冒号前面映射cacert子文件夹
- /share/Container/fastgithub/build_data:/build_data # 冒号前面映射build_data子文件夹
working_dir: /build_data
restart: on-failure
tty: true
entrypoint: sh -c 'cp /tmp/cacert/fastgithub.cer /usr/local/share/ca-certificates/fastgithub.crt && update-ca-certificates && git clone https://github.com/kubernetes/kubernetes.git'
command: ""
environment:
https_proxy: http://127.0.0.1:38457
http_proxy: http://127.0.0.1:38457
network_mode: host
build:
working_dir: /build_data
depends_on:
- sample
image: nginx
volumes:
- /share/Container/fastgithub/build_data:/build_data # 冒号前面映射build_data子文件夹
volumes:
cacert: {}
build_data: {}
代码粘贴无误后,记得点击下方的 “验证”按钮,确保YAML格式正确。
最后点击创建按钮,系统就会自动拉取镜像并启动服务,咱们可以在“概览”或“容器”列表中看到fastgithub、fastgithub-build-1和fastgithub-sample-1这三个容器。

四、如何启用GitHub加速
FastGithub部署成功后,我们需要修改一下Git工具的代理,方法是SSH登录到威联通NAS,然后输入以下代码:
git config --global http.proxy http://127.0.0.1:38457
较新版本的Git 在未设置https.proxy时通常会复用http.proxy,但考虑到兼容性和稳定性,如果遇到问题,还可以再单独设置一下https代理。
git config --global https.proxy http://127.0.0.1:38457
接下来咱们直接使用git clone一个项目尝试一下。
首先随便进入个目录,这里以Container目录举例:
cd /share/Container
然后输入:
git clone https://github.com/Tansuo2021/gemini-3-pro-image-preview.git
可以看到项目已经能够正常clone了:

同时在FastGithub容器的日志中可以看到解析记录:

而在部署完FastGithub后,我们在部署其他docker项目时,如果遇到该项目内部需要拉取GitHub信息的情况,也可以尝试在环境变量中通过指定代理地址和跳过SSL证书验证的方式来进行保证连接质量,类似下面这样:
environment:
# 1. 设置 HTTPS 代理指向 NAS 的 FastGitHub 端口
# 请将 192.168.1.10 替换为你 NAS 的真实 IP
- https_proxy=http://192.168.1.10:38457
- http_proxy=http://192.168.1.10:38457
# 2. 关键:关闭 Git 的 SSL 验证
# 因为容器内没有安装 FastGitHub 的证书,不关这个会报错 unable to get local issuer certificate
- GIT_SSL_NO_VERIFY=true
总结
以上就是本期为大家分享的全部内容,希望这几个实用的小技巧能切实帮到大家,进一步释放你手中威联通NAS的潜能。如果你在操作过程中遇到任何问题,或者有更好的加速方案,欢迎在评论区留言交流。
