本来只想着弄离线下载,结果发现Alist还挺有意思的,就直接也搞一下吧,依旧是使用的雨云服务器,使用的是江苏宿迁的NAT模式服务器,配置为2核2G,便宜大碗。
部署Alist
使用docker部署,安装docker的文章很多,随便找一个就行,或者看我博客中的文章,里面也有
-
创建目录
mkdir /home/alist
-
进入目录
cd /home/alist
-
创建并编辑配置文件
docker-compose.yml
services: alist: image: 'xhofe/alist:latest' container_name: alist volumes: - '/etc/alist:/opt/alist/data' - '/home/aria2/aria2-downloads:/aria2-downloads' #这里的/home/aria2/aria2-downloads就是部署aria2下载文件的地方,根据自己的情况修改,若是完全按我之前文章操作的,就不用改了 ports: - '5244:5244' environment: - PUID=0 - PGID=0 - UMASK=022 restart: unless-stopped
-
启动容器
根据docker安装情况不同,可能没有
docker-compose
命令,换成docker compose
即可docker-compose up -d
-
查看管理员账户密码
Alist首次启动时会自动创建admin用户并生成一个随机密码,在日志中查看
docker logs alist
-
开放端口
-
通过IP访问
显示此页面即可
-
使用cloudflare配置域名访问
添加CNAME记录,要开启代理,否则之后的Origin Rules不生效
创建一个Origin Rules
-
之后就可以使用子域名进行访问了
挂载网盘
Alist可以挂载众多网盘,这样方便查找和下载不同网盘的文件
具体操作官网文档挺详细的,有问题的话可自行查阅[Alist文档](蓝奏云优享版 | AList文档),我这里就写一下Aria2和蓝奏云优享版的挂载操作,其他的云盘自行查看文档
挂载Aria2下载目录
-
使用管理员账号登录后点击页面下方的管理
-
点击存储➡️添加
-
填写参数,保存即可
-
然后就可以在主页中看到Aria2目录
-
里面就是aria2下载的文件,可以对其中的文件进行下载或者删除
挂载蓝奏云优享版
这个版本的蓝奏云貌似有问题,挂载不上,但是优享版没问题
-
登录蓝奏云优享版,查看文件夹ID
为了区分普通文件和挂载到Alist文件,我新建了一个Alist文件夹,进入这个文件夹,查看地址栏中的文件夹ID
-
填写用户名和密码以及根文件夹ID即可,Web代理要打开,WebDAV策略选择302重定向
-
然后就可以在主页中看到了
-
可以在里面看到蓝奏云优享版中的文件并下载
看不到文件的话右下角刷新一下
Alist配合Aria2实现离线下载并上传至云盘
-
因为需要文件互通,所以需要挂载一个公共的目录
进入aria目录,停止aria2容器
cd /home/aria2/
docker compose stop
修改配置文件
vim docker-compose.yml
volume
参数下添加挂载目录- /home/alist/temp/aria2:/opt/alist/data/temp/aria2
保存后启动容器
docker compose up -d
进入alist目录,停止容器
cd /home/arialist/
docker compose stop
修改配置文件
vim docker-compose.yml
volume
参数下添加挂载目录- /home/alist/temp/aria2:/opt/alist/data/temp/aria2
保存后启动容器
docker compose up -d
-
配置aria后台:打开Alist的管理➡️设置➡️其他
-
填写Aria2地址和密钥
就是之前AriaNG中配置RPC时的地址和密钥,地址要包括后面的
/jsonrpc
-
配置aria前台:本地设置
-
配置Aria2
-
测试
复制一个下载链接➡️进入自己想上传的云盘➡️点击右下角的离线下载➡️选择aria2并输入链接
若是正常的话,会在AriaNG中看到正在下载的任务,下载速度受服务器下载速度影响
下载完成后会自动上传至所选云盘,比如我这里就是蓝奏云优享版,若没出现新文件就点击右下角的刷新,上传速度受服务器上传速度和网盘的限速
-
可能出现无法创建指定目录的错误,这是目录操作权限不够,修改一下即可
进入aria2容器
docker exec -it aria2-pro /bin/bash
使用
chmod
命令修改文件夹权限chmod 777 /opt/alist/data/temp/aria2/
退出容器
exit
这样问题就解决了
安全设置
毕竟是运行在公网上的服务,而且绑定了各个网盘的账号密码或者cookie,所以需要额外设置一下保证安全性
如果只是个人使用的话,就直接禁止游客访问即可,alist默认就是禁止游客访问
若是需要开放给其他人使用,则可以按我的设置
-
新建虚拟存储,文件夹和文件夹数量为0
-
添加元信息,为刚才的虚拟存储添加说明
-
设置好之后进入虚拟存储会显示如下界面
-
开启游客访问,管理➡️用户➡️编辑
-
将
停用
的勾选去掉,基本路径选择刚才创建的虚拟存储 -
这样游客就无法查看文件了,但会得到操作提示,可留下联系方式或其他内容引导用户,用户联系你之后你就创建个账号,比如新建个
123
的用户 -
若有的文件夹并不想让其他人看,就需要使用
别名
-
在存储中新建一个别名,路径中填写想让用户看见的文件夹,每行填写一个
-
保存后修改用户的基本路径为别名
-
这样指定的用户就只能看到你想让他看到的内容