之前给大家介绍了Olaindex这个网盘直链程序,大家反馈还不错。
姨妈级安装教程!Olaindex——一款颜值贼高的OneDrive网盘直链项目
当时咕咕搭了一个,域名是:https://share.laoda.de 但是现在访问已经不是olaindex了,原因是这个网盘直链程序莫名其妙崩了……考虑到olaindex安装起来也比较麻烦,所以咕咕又重新搭建了一个类似的网盘直链程序,相比olaindex,它搭建更加容易(docker一条命令搞定),升级也非常简单,支持的网盘也更多,UI也非常漂亮。
废话不多说,我们就来介绍今天的主角——Alist
文章目录
一、项目展示
GitHub项目地址:https://github.com/Xhofe/alist
Demo:https://alist.nn.ci
Alist文档地址:https://alist-doc.nn.ci/en/
二、搭建环境
- 服务器:腾讯香港轻量应用服务器24元/月VPS一台(最好是选非大陆的服务器)(购买链接)
- 系统:Debian 10(DD脚本 非必需DD用原来的系统也OK)
- 域名一枚,并做好解析到服务器上(域名购买、域名解析 视频教程)
- 安装好Docker、Docker-compose(相关脚本)
- 【非必需二选一】安装好宝塔面板,并安装好Nginx(安装地址)
- 【非必需二选一】安装好Nginx Proxy Manager(相关教程)
三、搭建视频
YouTube:https://youtu.be/6M8QoZoQ-28
哔哩哔哩【完整版本可以点击去吐槽到B站观看】:
四、搭建方式
选择适合自己的搭建方式。
1、一键脚本安装
仅支持Linux-x86_64/aarch64平台。
安装
curl -fsSL "https://nn.ci/alist.sh" | bash -s install
注意:
已经安装过再次执行安装会删除之前的数据,更新请使用更新命令。
更新
curl -fsSL "https://nn.ci/alist.sh" | bash -s update
卸载
curl -fsSL "https://nn.ci/alist.sh" | bash -s uninstall
自定义路径
默认安装在/opt/alist
,要自定义安装路径,添加安装路径为第二个参数,必须是绝对路径(路径以alist结尾时直接安装到给定路径,否则会安装在给定路径alist目录下),如安装到/root
:
# 安装
curl -fsSL "https://nn.ci/alist.sh" | bash -s install /root
# 更新
curl -fsSL "https://nn.ci/alist.sh" | bash -s update /root
# 卸载
curl -fsSL "https://nn.ci/alist.sh" | bash -s uninstall /root
2、手动搭建
参考文档:https://alist-doc.nn.ci/docs/install/manual
3、Docker(本次使用)
初始密码请查看日志输出:
docker logs alist
# 或者
docker exec -it alist ./alist -password
稳定版
docker run -d --restart=always -v /etc/alist:/opt/alist/data -p 5244:5244 --name="alist" xhofe/alist:latest
对应的docker-compose.yml
version: '3.3'
services:
alist:
restart: always
volumes:
- '/etc/alist:/opt/alist/data' # 冒号左边的地址可以自己修改
ports:
- '5244:5244' # 冒号左边的端口可以自己修改
container_name: alist
image: 'xhofe/alist:latest'
开发版
docker run -d --restart=always -v /etc/alist:/opt/alist/data -p 5244:5244 --name="alist" xhofe/alist:v2
指定版本
具体见: https://hub.docker.com/r/xhofe/alist
我们此次使用稳定版安装。
4、其他安装方式
具体见:https://alist-doc.nn.ci/docs/intro
五、开始搭建(以Docker安装为例子)
1、搭建Docker环境
参考这篇:【Docker系列】不用宝塔面板,小白一样可以玩转VPS服务器!
2、运行安装代码
视频安装代码:
docker run -d --restart=always -v /root/data/docker_data/alist:/opt/alist/data -p 5244:5244 --name="alist" xhofe/alist:latest #可以自己保存下来,比如创建一个config.txt的文件,把这条代码复制进去保存,下次换服务器搬家之类的就很容易。
查看密码:
docker logs alist
3、放行相关端口
遇到访问不了,请在宝塔面板的防火墙和服务商的后台防火墙里打开对应端口。
4、配置反向代理
详情参考视频,注释掉Nginx配置文件中的这部分内容:
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
error_log /dev/null;
access_log off;
}
location ~ .*\.(js|css)?$
{
expires 12h;
error_log /dev/null;
access_log off;
}
代码如下:
location / {
proxy_pass http://127.0.0.1:5244/;
rewrite ^/(.*)$ /$1 break;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade-Insecure-Requests 1;
proxy_set_header X-Forwarded-Proto https;
}
5、访问配置账号
此时,输入反向代理的域名就能正常访问网站了,输入docker logs alist
里面的密码就能正常登陆后台了。为了方便起见,建议更改一个自己能记住的密码。
6、添加本地存储
路径可以填写/opt/alist/data/
,这样的话,就对应VPS上的/root/data/docker_data/alist
这个安装目录了。
如果你想深一级,可以填写/opt/alist/data/local
,这样的话,你在原来挂载的目录/root/data/docker_data/alist
下,新建一个local
的文件夹就可以了,然后你把自己想要展示的文件放在/root/data/docker_data/alist/local
里即可。
其他网盘的添加方式,请参考作者的文档:https://alist-doc.nn.ci/en/
六、更新Alist(适用于Docker)
docker stop alist #停止alist容器
docker rm -f alist #删除alist容器,因为之前映射到了本地,所以数据不会被删除
cp -r /root/data/docker_data/alist /root/data/docker_data/alist.bak #可选,如果不放心,可以备份一下数据
docker pull xhofe/alist:latest #拉取最新的alist镜像
docker run -d --restart=always -v /root/data/docker_data/alist:/opt/alist/data -p 5244:5244 --name="alist" xhofe/alist:latest #运行安装命令,注意-v挂载的路径与原来相同
七、结尾
祝大家用得开心,有问题可以去GitHub提Issues,也可以在评论区互相交流探讨。
---------------
如何觉得文章内容不错,欢迎点击一下广告,支持一下咕咕😍😍😍
原创文章,作者:Roy,如若转载,请注明出处:https://iwanlab.com/docker-install-alist/
评论列表(7条)
docker-compose.yml安装步骤是不是缺了点啥,我报错failed get storage: storage not found; please add a storage first。回来用Docker了哈哈哈
@德德:docker跑起来之后,你要去后台先设置一个存储源
你好,我在同一服务器上搭载了cloudreve和alist,想把cloudreve挂载到alist,但是alist都显示不出cloudreve的存储路径的文件,到底该怎么填写呢
@lokou:cloudreve有webdav吗,有的话试试webdav;或者把cloudreve的路径放在alist的挂载路径下,然后采用local storage的方式,举例子,假如你的alist的docker挂载路径是`/root/data/docker_data/alist/alist/`,你可以创建一个`/root/data/docker_data/alist/alist/local`的文件夹,然后在alist后台,新建一个“本地存储”,路径填`/local`这样你的alist就能显示`/root/data/docker_data/alist/alist/local`这个文件夹下的内容了,以此类推,你可以把cloudreve放在这个文件夹,就能在alist显示了
@Roy:补充一下,alist的后台那边的“根文件夹路径”填`/opt/alist/data/local`
后台的aria2怎么设置离线下载,通过这个教程无法实现离线下载?能否有进一步的教程
@kk:手动安装一个aria2,然后把下载挂载到alist也可以的,alist自带的那个我没怎么折腾过 = =