如果你在同时使用百度网盘、阿里云盘、OneDrive 和一台家里的 NAS,"文件到底在哪个盘"就成了每天都要面对的问题。OpenList 给出的答案是:把所有云盘都接进一个面板,用一套统一的界面管理和访问。
一、什么是 OpenList?
OpenList 是一款开源的文件列表程序,采用后端 Gin + 前端 SolidJS 架构,前身是广为人知的 AList 项目。项目定位为 "a resilient, long-term governance, community-driven fork of AList"——以社区治理方式延续、保障 AList 生态的长期可持续性。

协议:AGPL-3.0
二、核心能力
聚合多云盘:支持 40+ 存储后端,包括阿里云盘、百度网盘、OneDrive、Google Drive、Dropbox、夸克网盘、迅雷云盘、123 云盘,以及 S3、WebDAV、SFTP、SMB、Seafile、GitHub 等企业与开发者场景。
统一文件视图:各个网盘在面板中以虚拟目录方式呈现,像操作本地目录一样浏览、搜索、分享。
WebDAV 输出:OpenList 自身可作为 WebDAV 服务端,把多云盘映射成单个挂载点,在 Windows、macOS、移动端 App 中直接挂载。
在线预览:文档、音视频、代码、Office 文件等常见格式都能直接在浏览器查看。
分享链接:支持创建访问密码、失效时间的分享链接。
三、架构一览
OpenList 本身只是一个"中间层"——它不存储文件,而是通过各个云盘的开放 API 代理请求:
[用户浏览器 / WebDAV 客户端]
↓
[OpenList 面板] ← 统一认证 / 路由 / 缓存
↓ ↓ ↓ ↓
[阿里][OneDrive][S3][WebDAV][...4四、使用 Docker Compose 部署
Docker CLI
安装好 Docker 后,执行以下命令:
v4.1.0 以后版本
注意
请注意:/etc/openlist 仅为默认映射的目录,您可以根据需要修改为其他目录。
提示
如果希望使用当前用户运行和管理 OpenList 及其配置目录,请使用以下命令:
mkdir -p /etc/openlist
docker run --user $(id -u):$(id -g) -d --restart=unless-stopped -v /etc/openlist:/opt/openlist/data -p 5244:5244 -e UMASK=022 --name="openlist" openlistteam/openlist:latest提示
如果希望使用 1001,即容器内置的默认 openlist 用户运行和管理 OpenList 及其配置目录,请使用以下命令:
sudo chown -R 1001:1001 /etc/openlist
docker run -d --restart=unless-stopped -v /etc/openlist:/opt/openlist/data -p 5244:5244 -e UMASK=022 --name="openlist" openlistteam/openlist:latestv4.1.0 及以前版本
docker run -d --restart=unless-stopped -v /etc/openlist:/opt/openlist/data -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="openlist" openlistteam/openlist:latestDocker Compose
创建 docker-compose.yml 文件。
mkdir -p /opt/openlist
cd /opt/openlist
vim docker-compose.yml写入以下内容,然后保存并退出:
v4.1.0 以后版本
# docker-compose.yml
services:
openlist:
image: 'openlistteam/openlist:latest'
container_name: openlist
user: '0:0' # Please replace `0:0` with the actual user ID and group ID you want to use to run OpenList.
volumes:
- './data:/opt/openlist/data'
ports:
- '5244:5244'
environment:
- UMASK=022
restart: unless-stoppedv4.1.0 及以前版本
# docker-compose.yml
services:
openlist:
image: 'openlistteam/openlist:latest'
container_name: openlist
volumes:
- './data:/opt/openlist/data'
ports:
- '5244:5244'
environment:
- PUID=0
- PGID=0
- UMASK=022
restart: unless-stopped在 docker-compose.yml 相同目录下执行:
docker compose pull
docker compose up -d执行 docker compose up -d 启动后,访问 http://<server-ip>:5244 即可进入面板。容器首次启动时会在日志中打印初始管理员账号和密码,务必记录。
五、在 1Panel 上的一键部署
1Panel 应用商店已上架 OpenList。打开 1Panel 控制台 → 应用商店 → 搜索 "OpenList" → 点击安装,填写端口、数据目录等参数即可完成部署,不需要手写 Compose 文件,后续升级也可以在面板中一键执行。
👇 1Panel 官方地址
安装 1Panel
首先需要在服务器上安装 1Panel。
以 root 用户身份运行以下一键安装脚本,自动完成 1Panel 的下载和安装:
bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)"📖 详细安装说明:请参考 1Panel 官方安装文档
安装完成后,通过提示的访问地址和初始账号密码登录 1Panel。
安装 OpenList
登录 1Panel,进入 应用商店,搜索 openlist,点击安装即可。

安装时请根据实际需求配置以下参数:
版本号:选择最新的稳定版本
WebUI 端口:默认为
5244,可按需修改S3 端口:默认为
5246,可按需修改预装环境:
缩略图:预装 ffmpeg
离线下载:预装 aria2
以上所有:预装 ffmpeg & aria2时区:建议设置为
Asia/Shanghai高级设置:务必勾选端口外部访问
保持默认配置也可以完成安装,但建议根据实际需求调整。

使用 OpenList
安装完成后,进入 已安装 页面,点击 跳转 即可进入 OpenList 的 WebUI 页面。

使用前建议在 面板设置 页面设置好默认访问地址。
如果后续配置了反向代理,可以在
已安装 → 参数页面修改 Web 访问地址。
获取默认账户密码
进入 容器列表,找到 OpenList 容器,点击 终端 按钮进入容器内执行以下命令:
生成随机密码:
./openlist admin random手动设置密码:
./openlist admin set 你的新密码注意:将
你的新密码替换为您想要的密码。


六、使用前需要注意
AGPL-3.0 约束:如果你基于 OpenList 二次开发并对外提供服务,需要遵守 AGPL 协议开源相关修改。
合规使用:云盘厂商有各自的服务条款,避免用于滥用带宽、大规模转存他人内容等行为。
反向代理建议:若将面板暴露到公网,建议使用 1Panel 的网站(反向代理 + HTTPS)统一接入并开启访问控制。
参考链接
OpenList 官方文档:https://doc.oplist.org/
OpenList GitHub 仓库:https://github.com/OpenListTeam/OpenList
docker-compose.yml 官方示例:OpenList 仓库内
评论