Centos中使用Alist和qBittorrent(Docker)实现离线下载-天天热讯

2023-05-17 21:07:14    来源:哔哩哔哩

*标题中“Docker”所指为仅qBittorrent使用Docker部署,而Alist位于宿主机中。*本文着重解决由于Alist每次重启时都将temp(alist本地缓存目录)用户&用户组设置为root:root,权限设置为755,导致位于容器中的qBittorrent无法对其读写的问题(webui提示下载错误)


【资料图】

一、安装Alist

有手就行自行百度或查看官方文档[安装]

后按自身需求参照文档自定修改配置文件

二、Docker部署qBittorrent

1、创建&运行容器

运行以下命令即可

注意按需修改相关参数

2、更改账密

登录webui,地址:http://容器宿主机ip:环境变量中设置的QBT_WEBUI_PORT

默认账户:admin

默认密码:adminadmin

设置完后拨动滚轮向下翻,点击最下面的保存即可

三、设置Alist

访问 http://alist域名或ip:端口/@manage/settings/other

在这里填写http(s)://qbit用户名:qbit密码@qbit宿主机ip:qbit端口/

点击设置qBittorrent,右上角出现下图气泡即为设置成功

完成后就可以在离线下载页面选择qBittorrent下载了

四、错误分析与解决

UP目前只遇到了这个问题,所以只阐述该问题的现象和解决办法(上文部署qbit的步骤已经规避了该问题)

若按qb官方提供的命令进行部署 (挂载alsit的temp)

qbit进程将以qbtUser用户运行,id为1000

主机中id=1000的用户为www,但temp目录owner为root,权限为755,造成不可写

尝试调整权限为775后正常,但重启alist后该目录权限又被改回755,此路不通

于是在创建qBittorrent容器时,加入以下环境变量:

即设置容器中qbtUser用户的uid,gid为主机中的root 的uid,gid(具体参见docker-qBittorrent-nox中entrypoint.sh)同时删除容器的只读属性(不删貌似改不了)

启动即可见

解决问题

关键词: