一. 简介
Alist 是一款支持多种存储的目录文件列表程序,支持 web 浏览与 webdav,后端基于gin
,前端使用react
。
官方文档: Alist Document (nn.ci)
支持的存储
- 本地存储
- 阿里云盘
- OneDrive / Sharepoint(国际版, 世纪互联,de,us)
- 天翼云盘 (个人云, 家庭云)
- GoogleDrive
- 123 云盘
- 蓝奏云
- Alist
- FTP
- PikPak
- 闪电盘
- S3
- WebDav
- Teambition(中国,国际)
- 分秒帧
- 和彩云 (个人云, 家庭云)
- Yandex.Disk
- 百度网盘
- 夸克网盘
- 迅雷云盘
演示地址
二. CentOs7/8 环境下安装和部署
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. 手动安装
获取Alist
打开AList Release下载要部署的系统对应的文件,最新的版本前端已经与后端打包在一起,无需再次下载前端文件。
运行起来
Linux
# 解压下载对文件得到可执行文件:
tar -zxvf alist-xxxx.tar.gz
# 赋予程序执行权限:
chmod +x alist-xxxx
# 运行程序
./alist-xxxx
其中的xxxx是指不同系统/架构对应的名称,一般Linux-x86/64是alist-linux-amd64,如果你的glibc版本过低,建议下载musl版本
Windows
当看到输出start server @ 0.0.0.0:5244
且之后没有报错后,就表示运行成功了,首次运行会输出初始密码,程序默认监听5244端口,现在打开http://ip:5244
就可以看见登陆页面了,webdav相关请看WebDav。
守护进程
vim /etc/systemd/system/alist.service
添加以下内容,其中path_alist为alist所在的路径
[Unit]
Description=alist
After=network.target
[Service]
Type=simple
WorkingDirectory=path_alist
ExecStart=path_alist/alist-xxxx -conf data/config.json
Restart=on-failure
[Install]
WantedBy=multi-user.target
然后systemctl daemon-reload
,现在你就可以使用这些命令来管理程序了:
- 启动:
systemctl start alist
- 关闭:
systemctl stop alist
- 自启:
systemctl enable alist
- 状态:
systemctl status alist
- 重启:
systemctl restart alist
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 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. 使用 Docker-Compose 安装
提供懒人脚本 docker-compose.yml 、build.sh、stop.sh、restart.sh , 这些文件放在同一目录下
docker-compose.yml 文件
version: '2.0'
services:
alist:
image: xhofe/alist:latest
container_name: alist
ports:
- "5101:5244"
restart: always
volumes:
# alist的文件和配置目录(根据自身情况配置)
- /data/public/alist/app/data:/opt/alist/data
# 共享数据文件目录(根据自身情况配置)
- /data/share:/data/share
build.sh 一键构建
#! /bin/bash
# 创建和 docker-compose.yml中映射的共享数据文件目录(根据自身情况配置)
mkdir -p /data/share;
# 停止 Compose 应用相关的所有容器
docker-compose -f ./docker-compose.yml stop;
# 删除已停止的 Compose 应用
docker-compose -f ./docker-compose.yml rm -f;
# 部署当前的 Compose 应用
docker-compose -f ./docker-compose.yml up -d &&
# 列出当前的 Compose 应用的状态
docker-compose -f ./docker-compose.yml ps &&
# 打印 alist 日志
docker logs alist &&
echo " >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> alist docker-compose done ...... "
stop.sh 一键停止命令
#! /bin/bash
docker-compose -f ./docker-compose.yml stop
restart.sh 一键重启命令
#! /bin/bash
docker-compose -f ./docker-compose.yml restart
有了以上文件后 执行命令 sh build.sh
5. PaaS
The initial password refer to logs.
Koyeb
https://github.com/alist-org/alist-koyeb
Render
https://github.com/alist-org/alist-render
Railway
https://github.com/alist-org/alist-railway
Easy to use but easy to violate ToS too.
Heroku
- https://github.com/alist-org/alist-heroku-postgres (recommend)
- https://github.com/alist-org/alist-heroku
2 条评论
(๑•̀ㅁ•́ฅ)
⌇●﹏●⌇