开年第一篇文章,新年快乐~
前言
PeerBanHelper,通过WebUI与qBittorrent通讯。通过系统自带的资源监控不难注意到,飞牛OS系统自带的下载器后后端由qBittorrent和Aria2支撑,进程名称为trim-qbittorrent
和trim-aria2c
。但是飞牛OS没有提供系统自带qBittorrent的原生WebUI接口,xxxuuu/fnos-qb-proxy提供了一个Go语言代理WebUI的客户端,但是没有Docker部署。
让我这个Docker小白来试试。
本文其实就是RiverKy/fnos-qb-proxy/Docker-Install.md加几句话哈,水一篇文章美滋滋。已经PR给xxxuuu/fnos-qb-proxy了,应该不久就能在那里看见。
获取所需文件
到xxxuuu/fnos-qb-proxy: Releases获取fnos-qb-proxy_linux-amd64
,到RiverKy/fnos-qb-proxy获取相应的Dockerfile
和docker-compose.yml
。
然后进行一些配置,如下。配置过程中将多次用到查找与替换的功能,建议使用支持相应功能的编辑器而非手动替换,以免出错。此外,除非您清楚地知道您在做什么,否则不建议修改其他位置的内容。
修改Dockerfile
如果您修改了二进制文件的名称,请将如下字段中的fnos-qb-proxy_linux-amd64
改为您修改的文件名:
COPY fnos-qb-proxy_linux-amd64 /usr/local/bin/fnos-qb-proxy
修改docker-compose.yml
如果您需要自定义代理容器在宿主机上暴露的端口号(效果相当于上文中通过--port
参数传入的端口号),请修改如下字段中引号左边的7777
为您所需要的端口号:
ports:
- "7777:8086"
如果您需要自定义qBittorrent WebUI的访问密码(效果相当于上文中通过-p
或--password
参数传入的密码),请修改如下字段中的fnosnb
为您所需要的密码,注意,此处请勿将密码修改为非ASCII字符,否则qBittorrent的WebUI将错误转译密码导致登录失败:
environment:
- PASSWORD=fnosnb
然后开始构建并启动,如下。
构建镜像,启动容器
有两种方法完成这件事。
SSH
SSH访问您的主机,然后在含有Dockerfile
、docker-compose.yml
以及二进制文件fnos-qb-proxy_linux-amd64
的目录下执行docker compose up -d
。
fnOS WebUI / 飞牛OS网页版
- 将含有
Dockerfile
以及二进制文件fnos-qb-proxy_linux-amd64
的目通过您喜爱的方式上传到您的飞牛,注意此时不要上传docker-compose.yml
,否则可能会出现错误。并且请注意,目录需要上传到一个您接下来操作的账户能够访问的目录下。 - 登录您的飞牛OS网页版,进入Docker应用,在边栏中选择Compose,选择
新建项目
- 填写
项目名称
,选择第一步中上传的文件夹,此时在对话框中上传docker-compose.yml
,或者复制并粘贴docker-compose.yml
的全部内容,注意不要打乱格式。 - 选择
确定
此时您的容器应该正常运行,并且您将会在7777
或您指定的端口号上访问飞牛自带的trim-qbittorrent
的WebUI。
撒花🎉。如果是像我一样要通过Docker运行并接入PeerBanHelper,还可以通过docker inspect {Container}
来获取Docker提供的容器DNS名称,解决容器间访问时的IP变换问题。
更好的BitTorrent网络环境,这何尝不是一种TECH OTAKUS SAVE THE WORLD呢。