8
1
0

OpenList:社区驱动的多存储聚合文件列表程序

文章摘要
|
OpenList:社区驱动的多存储聚合文件列表程序-cover.png

1. 项目简介

OpenList 是一款开源文件列表程序,它源自 AList 社区分支,在原项目变更归属之后,由 OpenListTeam 独立接管维护,坚持完全开源、修改透明的治理原则,无官方付费版本,规避闭源衍生项目带来的信任风险。

项目的核心定位是统一网关:对接各类云盘与存储协议,把分散的存储资源收拢到同一个 Web 页面中浏览、管理与分享。支持容器化快速部署,适配 NAS、服务器、边缘函数等多种运行环境,同时配套官方桌面端、移动端、Worker 边缘版本,形成完整生态。项目采用 AGPL-3.0 开源协议,若对外提供托管服务,需要公开修改后的源代码。

仓库地址:https://github.com/OpenListTeam/OpenList

2. 核心技术栈

后端主体使用 Go 语言,基于 Gin Web 框架构建,搭配 GORM 作为 ORM 组件,Cobra 实现命令行管理;前端使用 SolidJS 开发,轻量化且加载性能优秀。

主要依赖组件:

  • Gin:高性能 Go HTTP 服务框架,负责路由与接口

  • GORM:数据库 ORM,支持多种数据库存储配置

  • Cobra:命令行工具,提供启动、迁移、运维指令

  • Gorilla Websocket:实时通信,用于任务进度推送

  • Bleve:可选全文检索引擎,提供文件搜索能力

  • quic-go:可选 HTTP/3 支持,优化大文件传输

  • 各类存储 SDK:阿里云 OSS、对象存储、网盘官方 SDK、SFTP/SMB/WebDAV 客户端

3. 主要功能特性

3.1 多存储后端聚合

内置四十余种存储驱动,覆盖国内主流网盘、国际云盘以及标准存储协议:阿里云盘、百度网盘、115 网盘、夸克网盘、天翼云盘、OneDrive、Dropbox、Mega、S3 兼容对象存储、Azure Blob、WebDAV、FTP、SFTP、SMB 等。同一实例可以挂载多个不同存储,实现一站式管理。

3.2 文件基础能力

  • 在线预览:支持图片、视频、音频、PDF、Markdown、代码、Office 文档直接预览,无需下载;

  • 文件操作:上传、下载、重命名、移动、删除、新建目录;

  • 跨存储复制:支持在两个不同存储之间直接转存文件,流量在服务端完成,不占用本地带宽;

  • 离线下载:支持链接离线拉取文件到挂载存储。

3.3 权限与分享控制

  • 文件夹密码保护、访客隐藏规则,可通过正则隐藏指定文件目录;

  • 生成分享链接,自定义有效期、提取码;

  • 用户账户体系,区分管理员与普通用户,精细化分配存储访问权限;

  • 内置 WebDAV 服务,支持各类 WebDAV 客户端挂载访问所有聚合存储。

3.4 多样化部署方案

  • Docker 部署:最简单主流方案,一条命令启动;

  • 源码编译:适合定制化修改;

  • Worker 边缘部署:基于 Hono+TS,运行在 Cloudflare Workers、阿里云 ESA 等边缘平台;

  • 配套客户端:官方 Tauri 桌面端、Flutter 移动端,支持服务管理、本地挂载、进程监控。

3.5 附加特性

  • 文件全文索引搜索;

  • HTTP/3、WebSocket 传输优化;

  • PGP 加密存储适配;

  • 完善的迁移工具,支持从原版 AList 平滑迁移配置与数据。

4. 典型使用场景

  1. 个人网盘聚合:把多个网盘统一入口,不用切换多个 App;

  2. 私有文件分享站:搭建文件分享网关,对外分发资料,设置提取码与时效;

  3. NAS 配套服务:在 NAS 上部署,整合本地存储与云端网盘;

  4. 工作室素材库:团队统一访问多源素材存储,通过 WebDAV 对接设计软件;

  5. 边缘轻量服务:使用 Worker 版本,无服务器成本搭建轻量化文件列表。

  6. 开发者:学习 Go Web、多存储适配器设计、WebDAV 服务实现、边缘部署方案。

5. 获取与部署

项目 Releases 提供预编译二进制包,推荐使用 Docker Compose 快速部署;也可以参考官方文档编译源码,或者使用 Worker 版本部署到边缘平台。配套桌面、移动端客户端在 OpenListTeam 组织下独立仓库维护。项目文档站点提供详细安装教程、存储驱动配置、迁移指南。

6. 总结

OpenList 延续了文件聚合网关的实用能力,同时解决了社区对上游项目的信任顾虑,依靠开放透明的社区治理持续迭代。丰富的存储驱动、灵活的部署形态、完善的权限分享功能,使其成为个人与小团队搭建统一文件入口的优选开源方案。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或者给予支持!

OpenList:社区驱动的多存储聚合文件列表程序
/archives/01a1ab48-37cd-7336-80e5-f41aafae48ba
作者
fufu大王
发布于
2026-11-05
许可协议
CC BY-NC-SA 4.0

评论