qbittorrentee 实现自动追番并挂载 alist
通过 qbittorrentee 的 RSS 订阅功能实现自动追番,然后通过 samba 挂载到 alist 实现在线播放。
树莓派 3B 已经吃灰了一段时间,正好拿来离线下载番剧,挂载在 samba 上也能在 Windows 上访问;如果网络条件允许,配合 ddns 还能挂载到 alist 上在公网访问。
服务使用 docker compose
来管理
qbittorrentee
qbittorrentee 是一个基于 qbittorrent 的增强版,支持 RSS 订阅功能。
在 https://mikanime.tv 上找到番剧的 RSS 地址,添加到 qbittorrentee 的 RSS 订阅中,添加下载规则,然后就可以自动下载番剧了。
# docker-compose.yml
services:
qbittorrentee:
image: superng6/qbittorrentee
container_name: qbittorrentee
ports:
- 6881:6881
- 6881:6881/udp
- 8080:8080
environment:
- PUID=root
- PGID=root
- TZ=Asia/Shanghai
volumes:
- ./config:/config
- ./downloads:/downloads
ports:
- 6881:6881
- 6881:6881/udp
- 8080:8080
restart: always
samba
samba 是一个开源的 SMB/CIFS 服务器,可以在 Linux 上实现文件共享。
使用下面的方法将 qbittorrentee 的 downloads
目录挂载到 samba 的 data
目录上,然后就可以在 Windows 上访问了。
# docker-compose.yml
services:
samba:
image: dperson/samba
container_name: samba
restart: always
hostname: shared
ports:
- 137:137/udp
- 138:138/udp
- 139:139
- 445:445
environment:
- TZ=Asia/Shanghai
volumes:
- ./data:/mount
command: '-p -n -u "samba;password"
-s "shared;/mount/;yes;yes;no;all;samba;samba;共享空间"'
挂载目录
提示
LTDR: mount --bind /mnt/source /mnt/destination
添加到 /etc/rc.local
中即可开机挂载。
假设你有一个目录 /mnt/source
,你希望将其挂载到 /mnt/destination
,可以使用以下命令:
mount --bind /mnt/source /mnt/destination
需要注意的是,bind 挂载只在当前会话中有效,系统重启后会失效。 如果你希望在系统启动时自动进行 bind 挂载,可以将挂载命令添加到启动脚本中,如 /etc/rc.local
或者修改 /etc/fstab
文件。
在 /etc/fstab
中配置 bind 挂载的示例:
/source/dir /destination/dir none bind 0 0
其中,/source/dir
是要被挂载的原始目录的路径,/destination/dir
是挂载点的路径。none 是文件系统类型,bind 是挂载选项,0 是用于备份和恢复的选项,0 是用于 fsck 检查的选项。
配置完成后,保存并退出 /etc/fstab
文件。然后,可以使用以下命令来挂载所有在 /etc/fstab
中配置的文件系统:
systemctl daemon-reload
sudo mount -a
这将自动挂载所有在 /etc/fstab
中配置的文件系统,包括使用 bind 挂载选项的目录副本。
卸载目录
umount /mnt/destination
alist
alist 是一个支持多种存储的文件列表程序,类似于网盘,可以用来在线播放下载的番剧。
部署后在 alist 的存储上添加 SMB 驱动,然后就可以在 alist 上访问 samba 共享的文件了。
# docker-compose.yml
services:
alist:
image: xhofe/alist-aria2
container_name: alist
volumes:
- ./data:/opt/alist/data
ports:
- 5244:5244
environment:
- PUID=0
- PGID=0
- UMASK=022
- TZ=Asia/Shanghai
restart: always
ddns
ddns-go 是一个简单的 ddns 客户端,可以通过配置文件或者命令行参数来更新域名解析。
将 ddns-go 部署到树莓派上,然后配置好域名解析,就可以通过域名访问到树莓派上的 alist 服务了。
# docker-compose.yml
services:
ddns-go:
image: jeessy/ddns-go
container_name: ddns-go
restart: always
network_mode: host
volumes:
- ./data:/root
command: -f 600