西柚味冰红茶's Blog

目录列表程序AList使用教程

简介

AList是一款支持多种存储的目录文件列表程序,后端基于gin,前端使用react。

项目地址

预览

部署

先打开 https://github.com/Xhofe/alist 点个star

手动部署

运行起来

  1. 打开AList Release下载要部署的系统对应的文件
  2. 解压下载对文件得到可执行文件:tar -zxvf alist-xxxx.tar.gz(Linux)
  3. 赋予程序执行权限:chmod +x alist-xxxx
  4. 运行程序:./alist-xxxx
  5. 完成,后台默认密码为alist

守护进程

vim /usr/lib/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重载配置,现在你就可以使用这些命令来管理程序了:

使用Docker

从源码运行

首先需要有nodejs、yarn、golang>1.17的环境

构建前端

clone https://github.com/Xhofe/alist-web 这个项目,执行yarn&& yarn build,得到dist目录下的目标文件

构建后端

将上一步dist目录下的文件全部拷贝至 https://github.com/Xhofe/alist 项目下的public目录,然后:

appName="alist"
builtAt="$(date +'%F %T %z')"
goVersion=$(go version | sed 's/go version //')
gitAuthor=$(git show -s --format='format:%aN <%ae>' HEAD)
gitCommit=$(git log --pretty=format:"%h" -1)
gitTag=$(git describe --long --tags --dirty --always)
ldflags="\
-w -s \
-X 'github.com/Xhofe/alist/conf.BuiltAt=$builtAt' \
-X 'github.com/Xhofe/alist/conf.GoVersion=$goVersion' \
-X 'github.com/Xhofe/alist/conf.GitAuthor=$gitAuthor' \
-X 'github.com/Xhofe/alist/conf.GitCommit=$gitCommit' \
-X 'github.com/Xhofe/alist/conf.GitTag=$gitTag' \
"
go build -ldflags="$ldflags" alist.go

反向代理

程序默认监听5244端口,要实现https访问,需要使用nginx反向代理,在配置文件中加入

    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_redirect off;
        proxy_pass http://127.0.0.1:5244;
    }

使用

添加账号

所有账号的必填项:

本地存储

只需填写根目录路径即可,可以是绝对路径,也可以是程序所在的相对路径

阿里云盘

Onedrive

打开https://tool.nn.ci/onedrive/request

创建应用

获取刷新令牌

将上一步骤中获得的client_idclient_secret填入https://tool.nn.ci/onedrive/request 这个页面,点击获取刷新令牌,就可以得到刷新令牌了

获取Sharepoint site_id(未测试)

如果需要挂载Sharepoint,完成上一步后,在显示刷新令牌的界面会出现一个输入站点地址,输入站点地址后点击获取site_id即可。

添加账号

将上述过程中获取得到的值依次填入即可。

天翼云盘

填写账号(手机号),密码即可。可能会触发验证码,可等一段时间再重试。
根目录ID:与阿里云盘类似,官网url最后面一串,如:

GoogleDrive(支持团队盘)

参照https://install.kenci.workers.dev/ 获取client_id,client_secret,refresh_token;或:

  1. Open Google Drive API
  2. Create a OAuth client ID
  3. Install rclone software locally
  4. Get refresh_token with rclone

123Pan

填写账号密码即可。

元信息(meta)设置

此处的path(路径)是访问alist页面时的pathname,如要设置https://alist.nn.ci/本地存储则路径是/本地存储

设置密码

填写密码字段即可

隐藏文件/文件夹

填写hide字段,填写要隐藏的文件(夹)名称,以,分隔,比如要隐藏https://alist.nn.ci/本地存储下的README.mdindex.tsx文件,则填写README.md,index.tsx即可。

常见问题

文章转载自Xhofe's Blog

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »