Docker建站(十七)Alist:多存储支持的目录程序

Alist

1、简介

类似于 OneIndex、OlaIndex,Alist是一款目录程序。

相比于其他同类产品,Alist 具有以下优势:

  • 使用简单

AList 从一开始就设计为易于安装,并且可以在所有平台上使用。

  • 多种存储

AList 支持多个存储提供商,包括本地存储、阿里云盘、OneDrive、Google Drive 等,且易于拓展。

  • 支持 WebDAV

AList 支持所有 WebDAV 存储,这是一种用于访问文件的标准。

  • 黑暗模式

自由切换明暗模式

  • 受保护的路由

为特定路径添加密码保护和身份验证

  • 文件预览

支持视频、音频、文档、PDF、图片预览等,甚至支持 ipa 安装

  • 打包下载

使用浏览器的 stream api 支持打包下载,无需使用服务器

  • 更多新功能

包括文本编辑器、README/HTML 渲染、文件永久链接、Cloudflare Workers 代理等

2、安装

2.1、发行版

一键安装:

Bash
1
docker run -d --restart=always -v /etc/alist:/opt/alist/data -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist" xhofe/alist:latest

使用Docker-Compose:

yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
version: '3.3'
services:
    alist:
        restart: always
        volumes:
            - '/etc/alist:/opt/alist/data'
        ports:
            - '5244:5244'
        environment:
            - PUID=0
            - PGID=0
            - UMASK=022
        container_name: alist
        image: 'xhofe/alist:latest'

如果需要预装 Aria2,可以使用:

关于此镜像,如需了解更多可参考

https://hub.docker.com/r/xhofe/alist-aria2

如果使用 v2rayA 等代理访问 Google Drive,需要加上--net=host以使用宿主机网络,例如:

Bash
1
docker run -d --restart=always -v /etc/alist:/opt/alist/data -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --net=host --name="alist" xhofe/alist:latest

2.2、开发版

注意:
仅适用于 amd64/arm64。不推荐,这可能无法正常工作。

一键安装:

Bash
1
docker run -d --restart=always -v /etc/alist:/opt/alist/data -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist" xhofe/alist:main

使用Docker-Compose:

yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
version: '3.3'
services:
    alist:
        restart: always
        volumes:
            - '/etc/alist:/opt/alist/data'
        ports:
            - '5244:5244'
        environment:
            - PUID=0
            - PGID=0
            - UMASK=022
        container_name: alist
        image: 'xhofe/alist:main'

其他参数同发行版。

3、使用

反向代理127.0.0.1:5244,即可访问。

在启动后,需要查看默认密码:

Bash
1
docker exec -it alist ./alist admin

获得密码后,即可访问

https://your.alist.website/@login

登录页面。

写到这里,我想起我第一次弄的时候,由于不知道拉到底下就能看见“登录”,还找了半天登录页面在哪里 XD

4、避坑

在Docker环境中,访问127.0.0.1是容器,而不是宿主机,因此如果 Aria2 运行在 127.0.0.1:6800,Docker使用的网段是172.17.0.1/24,那么应该把 Aria2 地址设置为172.17.0.1:6800

5、使用体验

测试了之后,我认为使用体验比 Oneindex(老古董,几乎不可用)、Olaindex(颜值高,但是配置不太友好)等程序好很多,体现在以下几个方面:

  1. 能挂载在子目录

我使用/OneDrive作为所有OneDrive账号的根目录,因此可以通过/OneDrive/1这种形式访问,而不需要把所有的都放在根目录。

  1. 支持的类型多

Alist 支持的存储类型多到我都没时间全部探索一遍……

  1. 原生支持 Aria2
  2. 方便地跨存储策略复制移动
  3. 自动刷新 Token

这点我认为是最重要的,Olaindex 一段时间不访问,访问就变成 500 ,一看才发现 Refresh_Token过期了。而Alist会自动每隔2小时刷新一次,无需手动刷新。

Docker建站(十七)Alist:多存储支持的目录程序

https://blog.tsinbei.com/archives/1159/

文章作者
Hsukqi Lee
发布于

2023-02-13

修改于

2023-05-21

许可协议

CC BY-NC-ND 4.0

评论

昵称
邮箱
网址
暂无