OpenList 和 AList 都常用于把本地目录、网盘、对象存储等资源整理成一个 Web 文件列表。适合个人文件管理、素材预览、临时分享和 WebDAV 场景。
官方入口
选型说明
| 项目 | 说明 |
|---|---|
| AList | 较早被大量使用的文件列表程序,生态资料比较多 |
| OpenList | AList 的社区 fork,强调长期治理、透明维护和开源延续 |
如果是新部署,可以优先看 OpenList;如果已有 AList,不建议没有备份就直接迁移。
OpenList Docker 部署
准备数据目录:
1 | mkdir -p /etc/openlist |
使用当前用户运行:
1 | docker run --user $(id -u):$(id -g) -d \ |
如果使用容器内默认用户,要注意目录权限:
1 | chown -R 1001:1001 /etc/openlist |
查看首次管理员密码:
1 | docker logs openlist |
重置管理员密码:
1 | docker exec -it openlist ./openlist admin random |
AList Docker 部署
1 | docker run -d \ |
查看日志:
1 | docker logs alist |
Docker Compose 示例
1 | services: |
启动:
1 | docker compose up -d |
Nginx 反向代理
1 | server { |
如果有大文件上传,还要增加:
1 | client_max_body_size 1024m; |
常见问题
访问不了 5244
检查容器和端口:
1 | docker ps |
如果服务器有防火墙:
1 | firewall-cmd --add-port=5244/tcp --permanent |
生产环境更建议只开放 80/443,通过 Nginx 反代到 127.0.0.1:5244。
上传失败或目录无权限
检查挂载目录权限:
1 | ls -ld /etc/openlist |
如果容器使用 1001 用户运行:
1 | chown -R 1001:1001 /etc/openlist |
反向代理后下载链接不对
检查代理头:
1 | proxy_set_header Host $host; |
如果站点放在子目录,还要确认程序本身是否支持配置站点 URL 或路径前缀。
WebDAV 连不上
优先确认:
- 用户是否开启 WebDAV 权限。
- 客户端地址是否填写完整。
- 反向代理是否正确转发
PROPFIND、PUT、DELETE等方法。 - HTTPS 证书是否可信。
安全建议
- 不要把管理后台暴露给完全公开的网络,至少设置强密码。
- 反向代理层可以加 Basic Auth、IP 白名单或 Cloudflare Access。
- 不要把服务器根目录挂载给文件列表程序。
- 分享外链要设置过期时间或访问密码。
- 定期备份配置目录。