一、前言
之前写了篇教程,PT工具之Docker全家桶+HTTPS详细配置教程,主要讲述了使用Docker部署常用工具及反向代理上https。
之前预告过还写一篇辅种教程合集的,故有了此篇教程,但是发现内容实在太多,于是分成了2篇,这是第二篇操作篇,还有一份原理篇详见这里:qBittorrent下载+转种Transmission快校版+IYUU Plus辅种教程原理篇,建议先阅读原理篇,这样可以更好地帮你理解相关操作的含义。
二、安装
我们所有的服务均采用Docker安装,部分内容和之前的文章有重复,遇到不清楚的可以参考之前的文章:PT工具之Docker全家桶+HTTPS详细配置教程。
其他的安装方式,可以参考软件官网教程。
因为之前的文章已经详细讲过反向代理和https配置,今天所有的安装,并没有这边部分内容,均使用局域网地址进行访问。
(一)qBittorrent
1.配置文件
docker-compose.yml参考:
version: "3.2"
services:
qbittorrent:
image: linuxserver/qbittorrent
container_name: qbittorrent
environment:
- PUID=1001
- PGID=1001
- TZ=Asia/Shanghai
- UMASK_SET=022
- WEBUI_PORT=8081
volumes:
- /share/CACHEDEV3_DATA/Docker/qbittorrent/config:/config
- /share/CACHEDEV3_DATA/Network/QBDownloads:/downloads
ports:
- 10681:10681
- 10681:10681/udp
- 8081:8081
restart: unless-stopped
2.配置解释
(1)PUID
和PGID
这是容器里启动服务的用户的用户UID和GID,一般是为了限制容器服务的权限,比如你可以在NAS里,新建一个docker
用户,所有的docker服务都用这个权限来启动;。
用户新建完成后,ssh
登陆NAS后,使用cat /etc/passwd
查看这个用户的UID和GID,比如像这样:docker:x:1000:100:Linux User,,Docker服务用户,:/share/homes/docker:/bin/sh
,然后修改上面的PIUD=1000
,PGID=100
。
如果小白怕麻烦的话,可以将PUID
和PGID
都改成0
,就是使用root
或者admin
用户运行,这样不会遇到文件夹没有权限操作的问题。
(2)WEBUI_PORT
这里需要改成你web想要访问的端口,服务启动后,输入IP+端口才能访问到你的服务。注意的是配置文件中的ports
选项的第三行需要同步将这个端口expose出来,也就是这里的端口需要改成和WEBUI_PORT
一样的端口。
(3)ports
这里的10681
需要改成你实际使用,qbittorrent
用来传入连接的端口,这个和你的WEB端口是两个东西,是BT下载用的。这个端口,路由器里面需要配置端口转发,你的qbittorrent
配置里也要配置成相同端口。
这里多说一句,因为我路由器里配置的端口范围转发,比如转发10000-11000
所有范围的端口到我的NAS,这样只要我NAS的所有服务都配置成这个范围的端口,就不需要为每个端口进行转发配置。
(4)volumes
这里是将的宿主机的磁盘挂载到容器里面去,这样我们可以直接修改文件而不需要进入容器。
-
/share/CACHEDEV3_DATA/Docker/qbittorrent/config
,qb的配置文件夹,改成你的实际设备路径,后期的种子文件夹可以直接去这个里面找。 -
/share/CACHEDEV3_DATA/Network/QBDownloads
: 下载文件夹,你下载所有文件都在这个文件夹。
(二)Transmission快校版
1.配置文件
docker-compose.yml参考:
version: "3.2"
services:
transmission:
image: chisbread/transmission
container_name: transmission
environment:
- PUID=1001
- PGID=1001
- TZ=Asia/Shanghai
- USER=your_user_name
- PASS=your_passwd
- PEERPORT=10413
volumes:
- /share/CACHEDEV3_DATA/Docker/transmission/config:/config
- /share/CACHEDEV3_DATA/Network/transmission/downloads:/downloads
- /share/CACHEDEV3_DATA/Network/transmission/watch:/watch
- /share/CACHEDEV3_DATA/Network/QBDownloads:/qbdownloads
ports:
- 9091:9091
- 10413:10413
- 10413:10413/udp
restart: unless-stopped
2.配置解释
(1)PUID
和PGID
同上面的qbittorrent
(2)USER
和PASS
改成你想设置的用户名和密码。
(3)PEERPORT
这是transmission
用来传入连接的端口,需要和下面ports
里expose的端口配成一样的。
(4)volumes
这里是将的宿主机的磁盘挂载到容器里面去,前面需要改成你设备的实际路径。
-
config
:配置目录,后面的种子文件夹在这里面 -
downloads
:下载目录 -
watch
:种子监控目录 -
qbdownloads
: 可选项,这样transmission
可以访问到qbittorrent
的下载文件
(5)ports
左边的的9091
需要改成你实际使用,右边容器内的端口不能改,但这里建议不修改,这里的端口就是我们web访问的端口。
这里的10413
需要改成你实际使用,transmission
用来传入连接的端口,这个端口,路由器里面需要配置端口转发,你的transmission
配置里也要配置成相同端口。
(三)IYUUPlus
1.配置文件
docker-compose.yml参考:
version: "3.2"
services:
iyuuplus:
image: iyuucn/iyuuplus
container_name: iyuuplus
volumes:
- /share/CACHEDEV3_DATA/Docker/iyuuplus/db:/IYUU/db
- /share/CACHEDEV3_DATA/Docker/qbittorrent/config/qBittorrent/BT_backup:/BT_backup
- /share/CACHEDEV3_DATA/Docker/transmission/config/torrents:/torrents
ports:
- 8787:8787
restart: unless-stopped
2.配置解释
(1)volumes
这里是将的宿主机的磁盘挂载到容器里面去,前面需要改成你设备的实际路径。
-
/share/CACHEDEV3_DATA/Docker/iyuuplus/db
:程序数据库存放位置,改成机器中你想放置的任意路径 -
/share/CACHEDEV3_DATA/Docker/qbittorrent/config/qBittorrent/BT_backup
:这是前面qBittorrent
里配置文件的路径,/share/CACHEDEV3_DATA/Docker/qbittorrent/config
是我们qBittorrent
容器里映射给配置文件的路径,所以再加上种子的相对路径qBittorrent/BT_backup
,这里就得到了种子存放目录的绝对路径 -
/share/CACHEDEV3_DATA/Docker/transmission/config/torrents
:这是前面qBittorrent
里配置文件的路径,/share/CACHEDEV3_DATA/Docker/transmission/config
是我们transmission
容器里映射给配置文件的路径,所以再加上种子的相对路径torrents
,这里就得到了种子存放目录的绝对路径
三、配置
假设我们上面的三个服务均已安装完成,我们的设置局域网IP是192.168.31.88
,那么我们分别访问下面三个地址,应该分别能够访问到对应服务的WEB:
-
qBittorrent
:http://192.168.31.88:8081
-
Transmission快校版
:http://192.168.31.88:9091
-
IYUU Plus
:http://192.168.31.88:8787
qb
和tr
的使用没什么好说的,下面主要讲IYUU
的配置。
(一)获取Token
打开IYUU官网,https://iyuu.cn/,点击开始使用,然后手机扫码,关注账号,你会得到一个下面这样的Token
。
完成后将Token
保存,你可以理解为这是我们的一个客户端账号,后面和IYUU服务端交互时,都需要提交这个Token
,获取成功后可以点击发送测试消息看看手机能否收到消息。
(二)登陆
打开我们IYUU
服务地址:http://192.168.31.88:8787
使用我们刚才获取到的Token
进行登陆,密码为空,第一次输入时你可以自由设置你的密码;以后密码与第一次相同才能登录。
(三)验证
1.验证合作站点账号
第一次使用时,必须使用IYUU
合作的6个站点的注册信息验证通过后才可以使用,如果你没有上述的任何一个站点,去上面最后一个站点海带注册一个账号,该站点目前是开放注册的。
然后输入该站点的passkey
和uid
进行验证。
这里需要提醒的是,如果你使用的是最后一个开放注册的站点,种子文件使用的是authkey
,每个种子都不一样,需要去控制面板查看passkey
,否则使用authkey
会提示:非法请求,合作站点校验失败
。
2.查看passkey
这里给新手多说两句,很多人不知道自己的passkey
和uid
怎么看,使用下面任意一个方法均可。
在站点网页端,点击控制面板
,查看密钥
栏,那一串字符就是我们的passkey
。
在qb
中,点击一个我们任意站点下载的文件,点击Traker
,然后把网页URL
那一列拉长一点,就可以看到我们在此站点的passkey
。
在tr
中,点击一个我们任意站点下载的文件,点击服务器
,然后把网页服务器
那一列拉长一点,就可以看到我们在此站点的passkey
。
3.查看uid
打开任一站点网页,点击我们的用户,浏览器地址栏中最后那一串id=123456
中的数字就是我们的uid
。
示列:
https://xxxxxx.org/userdetails.php?id=123456
(四)添加站点
点击左侧菜单系统设置
,然后点击站点设置
,点下面的下拉框,选择你要新增的站点,加*
的为必填项,根据不同的站点填入即可,有部分站点需要填入网站的cookie
,cookie
的获取方法请自行搜索,添加完成后确认保存即可。
(五)添加下载器
1.添加qBittorrent
点击左侧菜单系统设置
,然后点击下载器设置
,点下面的下拉框,选择你要新增的下载器。
下面讲一下配置的含义:
- 下载器名字:给你自己看的,让你知道是哪一个下载器
- 下载器地址端口:就是我们上面qb的网页地址,比如
http://192.168.31.88:8081
- 下载器接入点:接入点,默认留空即可
- 用户名:qb用户名
- 密码:qb密码
- Docker安装:因为我们是容器安装的,这里勾上
- 默认下载器:哪个是你常用的,你就选这个
- 创建多文件子目录:默认即可
- 种子管理模式:默认即可
- watch监控目录:下载器用来监控种子的目录,因为我们不用来下载,所以可以不填,需要的理解后自行填写
- 数据目录:下载器的数据目录,因为我们不用来下载,所以可以不填,需要的理解后自行填写
- 种子目录:下载器的种子存放目录,容器安装的和我们映射的目录对应起来,填入
/BT_backup
这里给大家讲一下种子目录
这里为什么这样填。
2.种子目录解释
我们理解一下上面三个容器路径的关系,红黄蓝分别代表的相同的路径在不同系统中的映射:
可以看到在第一个容器中,我们将宿主机的/share/CACHEDEV3_DATA/Docker/qbittorrent/config
映射给了qb容器的config
,所以我们在宿主机访问/share/CACHEDEV3_DATA/Docker/qbittorrent/config/qBittorrent/BT_backup
就等于访问qb容器的/config/qBittorrent/BT_backup
,而这个目录这是qb的默认种子存放目录,但是我们又将/share/CACHEDEV3_DATA/Docker/qbittorrent/config/qBittorrent/BT_backup
映射给了IYUU容器的/BT_backup
目录,所以对IYUU容器看来,访问这个路径,就等于访问qb容器里的的种子文件路径。
访问IYUU容器/BT_backup
---->等于访问宿主机/share/CACHEDEV3_DATA/Docker/qbittorrent/config/qBittorrent/BT_backup
—>等于访问qb容器/config/qBittorrent/BT_backup
3.添加Transmission
与qb基本一致,注意的就是下载器地址端口,填写我们上面tr的网页地址,比如http://192.168.31.88:9091
种子目录
填写我们tr映射的种子目录:/torrents
(六)创建转种任务
1.创建目录
点击左侧菜单系统设置
,点下面的下拉框,选择转移任务
,这个时候会提示我们先创建目录:
点击确定后会自动跳转到创建目录界面,在菜单里也可以手动创建,点击左侧菜单系统设置
,点击目录设置
就可以访问相同页面。
这里我们添加qb下载的目录,这个目录不需要IYUU容器能够访问到,实际上IYUU容器有无法访问,因为我们压根就没有把这个目录映射进来,这里实际是下面用来告诉IYUU哪个目录的文件需要转种,哪个目录需要排除。
填写我们的下载目录,这个目录是qb容器里下载路径,如果有多个目录,请多次添加。
2.创建转移任务
目录创建完成后,继续到计划任务里创建我们的转移任务,分别按照下面的进行填写:
- 任务类型:
转移任务
- 任务名称:自己起一个
- 任务使能:需要启用改任务时打开,不需要时关闭
- 执行周期:定期执行的周期
- 来源下载器:qb,因为我们教程里需要的是qb转tr,可以根据自己实际情况修改
- 转移到下载器:tr
- 过滤器:如果没有需要排除的可不选
- 选择器:我们需要转移的种子所在文件的数据,添加到右侧
- 路径转换类型:用于相对路径与绝对路径之间互相转换
- 路径转换规则:可以看页面中的注释解释,这里使用
{#**#}
作为分隔符
这里着重讲一下路径转换规则,如果你看过原理篇,这里的目录是我们转种时,和种子一起发送给tr的参数,告诉tr这个种子所对应的路径在这个目录。
如果我们qb和tr都是用的套件安装,那么他们下载文件存放的路径,对两个程序来说都是一样的,选择相等即可,qb就会告诉tr,这个下载的文件就在/downloads
这个目录。
只有一个套件一个容器安装,或者都是容器安装,但是映射的不一样,就需要进行替换或者加减了。
我们会到上面容器的配置文件中,qBittorrent容器文件夹映射里是不是有这么一行:/share/CACHEDEV3_DATA/Network/QBDownloads:/downloads
。
Transmission容器里文件夹映射是不是有这么一行:/share/CACHEDEV3_DATA/Network/QBDownloads:/qbdownloads
,实际意义如下:
访问qb容器的/downloads
---->等于访问宿主机/share/CACHEDEV3_DATA/Network/QBDownloads
—>等于访问tr容器的/qbdownloads
。
所以我们文件存放的路径,都是在机器的某个实际路径,但这个路径对qb容器来说,叫/downloads
,对tr容器来说叫/qbdownloads
,所以把IYUU把文件路径传给tr时要把路径修改一下,这样tr才能找到对应的文件。
理解了上面的这个含义,在其他不同类型的下载互转时,你也能明白这里的含义。
而看注释里,当我们转换规则选择替换时,IYUU使用{#**#}
作为分隔符,将左边的路径替换为右边的,所以这里填写为/downloads{#**#}/qbdownloads
。
一切完成后,点击确认保存即可。
因为我们创建的是定时任务,只有到指定时间才会运行,所以配置完成后,我们想要立刻看一看配置的对不对怎么办,这时候可以手动运行我们的任务。
创建完成后,点击计划任务
可以看到我们刚刚创建的任务,点击运行
按钮,即开始我们的转种任务,点击日志
可以看任务的运行情况日志。
如果一切顺利的话,我们应该在日志里看到这样的打印:
如果我们选择了转移后暂停,这时候tr中应该可以看到暂停的种子里多了我们刚才qb里面下载的任务文件,看上去就像是用tr下载的一样:
这时候点击开始就可以做种上传了。
(七)创建辅种任务
其实到最后,辅种难以理解的内容都在原理篇,到了操作篇反而是最简单的了,只需要点击左侧菜单系统设置
,点下面的下拉框,选择辅种任务
,然后配置完成后保存就行了。
这里稍微解释下配置:
- 任务类型:
辅种任务
- 任务名称:自己起一个
- 任务使能:需要启用改任务时打开,不需要时关闭
- 执行周期:定期执行的周期,建议设置在转种任务之后运行
- 辅种的站点:勾选我们之前添加的站点,选择你想要辅种的站点
- 辅种的下载器:选择我们需要辅种的下载器,因为本教程里,我们将所有的种子都转移到tr中进行保种,所有这里只勾选transmission就可以了,这里是你填写的下载器的名称
- 自动检验:tr默认自动校验,qb如果没有自动校验,可以勾选
和之前的转移任务一样,如果一切顺利的话,我们应该在日志里看到这样的打印:
在tr中,应该可以看到多了很多种子,而且是正在校验中,这个时间会根据文件的大小长短不一,而因为我们这里使用的是Transmission快校版,校验速度会快上很多(所以我没截上正在校验的图-,-!)。
种子校验完成后,点击开始做种,就完成了我们辅种的全部流程。
四、写在最后
仔细算来,截止到这篇教程完成时,刚入PT这个圈子还一个月不到,但确实被这里旖旎风光所吸引,也看到了很多大神写的一些工具,从中学到了很多,所以我将我所学会的一些东西,以文字的形式将它记录下来,希望能够帮助到更多的后来者。
因为本人水平有限,教程中肯定有很多错误,还请大家多多批评指正。