Featured image of post Cloudreve 网盘:多存储后端 + Aria2 离线下载 + Web 客户端

Cloudreve 网盘:多存储后端 + Aria2 离线下载 + Web 客户端

部署 Cloudreve 作为个人 / 团队网盘,对接本地 / S3 / OneDrive / 阿里云 OSS 等多种存储后端,集成 Aria2 实现离线下载,提供完整的 Web 客户端

Cloudreve 是国内开发的开源网盘系统,核心优势是多存储后端(本地 / S3 / OneDrive / 阿里云 OSS / 腾讯云 COS / 远程从机),加上 Aria2 离线下载,特别适合做"网盘聚合"。本篇把 Docker 化部署、多存储配置、离线下载集成整理清楚。

阅读对象:需要聚合多种存储做"个人云"或"团队文件中心"的技术 / 个人用户 覆盖范围:Cloudreve 完整部署 + 多存储后端对接(本地 / S3 / OSS / OneDrive)+ Aria2 离线下载 + Web 客户端使用 + 备份与升级

一、Cloudreve 简介

Cloudreve 的核心特点:

特性CloudreveNextCloudSeafile
多存储后端✅ 极丰富较少较少
离线下载✅ Aria2 集成
部署难度简单中等中等
性能中等
Office 协作
视频播放✅ 转码
Web 客户端漂亮现代一般一般
移动端
Go 语言❌ PHP❌ Python

核心优势多存储聚合。你可以在 Cloudreve 里同时挂:

  • 本地磁盘(自建机房)
  • AWS S3 / MinIO(自建对象存储)
  • 阿里云 OSS / 腾讯云 COS(公有云)
  • OneDrive / Google Drive(国外云盘)
  • 远程从机(Cloudreve 节点)

When to use Cloudreve

  • 想把多个云盘 / 本地存储统一管理
  • 需要离线下载(Aria2 集成是杀手锏)
  • 个人 / 小团队用,追求 Web 体验
  • 不适用:需要 Office 在线编辑 / 视频通话 → 用 NextCloud

二、基础部署

2.1 拉取镜像

1
docker pull cloudreve/cloudreve:3.8.0

2.2 准备目录

1
2
3
4
5
6
7
cd /home/docker
mkdir -vp cloudreve/{uploads,avatar} \
  && touch cloudreve/conf.ini \
  && touch cloudreve/cloudreve.db \
  && mkdir -p aria2/config \
  && mkdir -p data/aria2 \
  && chmod -R 777 data/aria2

目录结构

1
2
3
4
5
6
7
/home/docker/
  ├─ cloudreve/
  │  ├─ uploads/        # 上传文件
  │  ├─ avatar/         # 用户头像
  │  ├─ conf.ini        # 主配置
  │  └─ cloudreve.db    # SQLite 数据库
  └─ data/aria2/        # Aria2 下载目录(共享给 Cloudreve)

2.3 启动

1
2
3
4
5
6
7
8
9
docker run -d \
  --name cloudreve \
  --restart=always \
  -p 5212:5212 \
  -v /home/docker/cloudreve/uploads:/cloudreve/uploads \
  -v /home/docker/cloudreve/avatar:/cloudreve/avatar \
  -v /home/docker/cloudreve/conf.ini:/cloudreve/conf.ini \
  -v /home/docker/cloudreve/cloudreve.db:/cloudreve/cloudreve.db \
  cloudreve/cloudreve:3.8.0

2.4 首次访问

1
http://<IP>:5212/

首次启动会生成初始管理员账号——看容器日志:

1
docker logs cloudreve 2>&1 | grep -A 5 "初始管理员账号"

输出示例:

1
2
[Info] 2023-06-15 03:00:00 初始管理员账号:admin@example.com
[Info] 2023-06-15 03:00:00 初始密码:AbCdEf123456

立即登录 → 改密码

三、配置 Aria2 离线下载

3.1 Aria2 Pro 镜像

cloudreve/aria2 是 Cloudreve 推荐的离线下载后端。

3.2 docker-compose 完整版

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
version: "3.8"
services:
  cloudreve:
    container_name: cloudreve
    image: cloudreve/cloudreve:3.8.0
    restart: unless-stopped
    ports:
      - "5212:5212"
    volumes:
      - /home/docker/cloudreve/temp_data:/data
      - /home/docker/cloudreve/uploads:/cloudreve/uploads
      - /home/docker/cloudreve/conf.ini:/cloudreve/conf.ini
      - /home/docker/cloudreve/cloudreve.db:/cloudreve/cloudreve.db
      - /home/docker/cloudreve/avatar:/cloudreve/avatar
    depends_on:
      - aria2

  aria2:
    container_name: aria2
    image: p3terx/aria2-pro:202209060423
    restart: unless-stopped
    environment:
      - RPC_SECRET={{ARIA2_SECRET}}
      - RPC_PORT=6800
    volumes:
      - /home/docker/cloudreve/aria2/config:/config
      - /home/docker/cloudreve/temp_data:/data

关键

  • RPC_SECRET:Aria2 RPC 认证密钥(强随机
  • /data 共享给 Cloudreve 和 Aria2——Aria2 下载的文件Cloudreve 立刻能看到

3.3 Cloudreve 后台配置 Aria2

管理面板离线下载Aria2 设置

1
2
3
4
RPC 服务器地址:http://aria2:6800/jsonrpc
RPC 认证令牌:{{ARIA2_SECRET}}
临时下载目录:/data
下载完成后移动到:/uploads

测试连接:看到 “成功”。

3.4 使用离线下载

Web 端 → 任意目录 → 新建离线下载任务

  • 普通下载:粘贴 HTTP 链接
  • BT 下载:粘贴 magnet 链接或上传 .torrent
  • Metalink:粘贴 metalink 链接

下载完成后自动从 /data 移动到 /uploads——通过 Web 端直接看到。

四、多存储后端

4.1 本地存储(默认)

1
2
3
存储策略名:本地存储
存储类型:本地存储
挂载路径:/uploads

Cloudreve 启动时默认创建。

4.2 AWS S3 / MinIO

管理面板存储策略新增S3 兼容

1
2
3
4
5
6
7
8
9
存储策略名:自建 MinIO
存储类型:S3 兼容
Endpoint:minio.internal.example.com:9091
Bucket:file
Region:us-east-1
Access Key:root
Secret Key:{{MINIO_PASS}}
启用 SSL:✅
启用路径风格:✅(MinIO 必需)

4.3 阿里云 OSS

1
2
3
4
5
6
7
8
存储策略名:阿里云 OSS
存储类型:S3 兼容
Endpoint:oss-cn-hangzhou.aliyuncs.com
Bucket:my-bucket
Region:oss-cn-hangzhou
Access Key:{{ALIYUN_AK}}
Secret Key:{{ALIYUN_SK}}
启用 SSL:✅

4.4 OneDrive

管理面板存储策略新增OneDrive

1
2
3
存储策略名:OneDrive 国际版
存储类型:OneDrive
回调 URL:http://cloudreve.example.com/api/v3/callback/onedrive/auth
  1. 配置 OneDrive 应用(Azure Portal)
  2. 拿到 Client ID / Client Secret
  3. 填到 Cloudreve
  4. 点击"授权" → 跳转到 Microsoft 登录 → 同意 → 回到 Cloudreve

4.5 远程从机

Cloudreve 节点程序部署到另一台机器,做"远程存储":

1
2
3
存储策略名:远程从机
存储类型:远程从机
节点地址:https://node2.example.com

适用场景:Cloudreve 主控 + 多台存储节点做"分布式网盘"。

4.6 用户组配额

不同用户组用不同存储策略:

1
2
3
普通用户:本地存储(限 10GB)
VIP 用户:阿里云 OSS(限 1TB)
管理员:所有存储策略

Web 端切换:用户组 → 编辑 → 存储策略。

五、用户与权限

5.1 用户组

管理面板用户组新建

1
2
3
4
5
6
组名:研发部
存储策略:本地存储
单文件大小:1GB
总容量:100GB
分享限制:每日 10 次
下载限速:5MB/s

5.2 注册策略

管理面板用户注册设置

  • 关闭注册:内部用
  • 邮箱注册:开放用
  • 邀请注册:受控开放
  • 白名单邮箱后缀:只允许 @example.com 邮箱注册

5.3 文件分享

Web 端 → 选中文件 → 分享

  • 公开链接:任何人可下载
  • 加密链接:需要密码
  • 过期时间:1 小时 / 1 天 / 7 天
  • 下载次数限制:避免被刷

六、Web 客户端

6.1 PC 端

直接用浏览器访问 http://<IP>:5212/——Cloudreve 的 Web 端做得相当漂亮

6.2 移动端

官方 Android / iOS App(付费,作者有收入才能持续维护):

  • iOS:App Store 搜 “Cloudreve”
  • Android:GitHub Release 找 APK

第三方替代:用浏览器访问 PWA 模式。

6.3 WebDAV 协议

Cloudreve 内置 WebDAV 服务——Windows / macOS 文件管理器可直接挂载:

1
2
3
URL:http://<IP>:5212/dav
用户名:xxx
密码:xxx

挂载为本地盘

1
2
# macOS
mount_webdav -i http://<IP>:5212/dav /Volumes/cloudreve
1
2
# Linux (davfs2)
mount -t davfs http://<IP>:5212/dav /mnt/cloudreve

七、备份

7.1 备份 SQLite

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# 1. 停服
docker stop cloudreve

# 2. 备份数据库
cp /home/docker/cloudreve/cloudreve.db /backup/cloudreve-$(date +%Y%m%d).db

# 3. 备份 conf
cp /home/docker/cloudreve/conf.ini /backup/

# 4. 启动
docker start cloudreve

7.2 备份上传文件

1
2
3
4
5
# 上传目录
tar czf cloudreve-uploads-$(date +%Y%m%d).tar.gz /home/docker/cloudreve/uploads

# 上传 OSS
ossutil cp cloudreve-uploads-*.tar.gz oss://backup-bucket/cloudreve/

7.3 Aria2 配置文件

1
2
3
4
# 备份
tar czf aria2-config-$(date +%Y%m%d).tar.gz /home/docker/cloudreve/aria2/config

# 重要:aria2.conf 里有 RPC_SECRET,不要泄露!

八、升级

1
2
3
4
5
6
7
8
9
# 1. 备份
./backup.sh

# 2. 拉新镜像
docker pull cloudreve/cloudreve:3.8.1    # 新版本

# 3. 修改 compose 文件的 image tag
# 4. 重启
docker-compose up -d

自动数据库迁移:Cloudreve 启动时自动检测版本并执行迁移。

九、生产部署清单

9.1 Nginx 反代

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
server {
    listen 80;
    server_name cloudreve.example.com;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl http2;
    server_name cloudreve.example.com;
    
    ssl_certificate     /etc/nginx/ssl/cloudreve.example.com.fullchain.pem;
    ssl_certificate_key /etc/nginx/ssl/cloudreve.example.com.privkey.pem;
    
    client_max_body_size 0;     # 不限上传大小
    
    location / {
        proxy_pass http://cloudreve:5212;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_http_version 1.1;
    }
}

9.2 HTTPS 证书(Let’s Encrypt)

1
2
# 用 certbot
certbot --nginx -d cloudreve.example.com

9.3 性能调优

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# conf.ini
[Database]
Type = sqlite
# 20+ 用户推荐用 MySQL
# Type = mysql
# Host = mysql
# Port = 3306
# User = cloudreve
# Password = {{DB_PASS}}
# DBName = cloudreve

[System]
Listen = :5212
HashIDSalt = "{{REDACTED}}"     # 必须设

9.4 监控

1
2
3
4
logging:
  driver: loki
  options:
    loki-url: "http://internal.example.com:3100/loki/api/v1/push"

十、典型坑位

10.1 注册收不到邮件

管理面板SMTP 设置

1
2
3
4
5
6
SMTP 服务器:smtp.example.com
端口:465
发件人:noreply@example.com
用户名:noreply@example.com
密码:{{SMTP_PASS}}
启用 SSL:✅

测试:注册一个新用户看是否能收到验证邮件。

10.2 Aria2 下载失败

症状:离线下载任务一直 “等待中”。

修复

1
2
3
4
5
6
7
8
# 1. 检查 Aria2 容器状态
docker logs aria2

# 2. 确认 RPC 可达
docker exec cloudreve curl http://aria2:6800/jsonrpc

# 3. 确认 RPC_SECRET 一致
# Cloudreve 配置的 token 必须和 Aria2 的 RPC_SECRET 一致

10.3 上传大于 2GB 文件失败

修复

1
2
# nginx
client_max_body_size 0;
1
2
3
4
# Cloudreve conf.ini
[Upload]
# 单文件最大 5GB
MaxSize = 5368709120

10.4 S3 存储连不上

修复

1
2
3
4
5
1. 确认 Endpoint 格式(带端口):minio:9091
2. 确认 Region 匹配
3. 启用 SSL:根据实际
4. 启用路径风格:MinIO 必须
5. 测试 ping:docker exec cloudreve ping minio

十一、安全加固

11.1 关闭注册

1
管理面板 → 用户 → 注册设置 → 关闭注册

11.2 强制 HTTPS

1
管理面板 → 系统设置 → 站点 URL:https://cloudreve.example.com

11.3 限制分享

1
2
3
用户组 → 编辑 → 分享限制
- 单日分享次数:50
- 加密分享:必填

11.4 限速

1
用户组 → 编辑 → 下载限速:5MB/s

十二、最佳实践清单

  • Aria2 必装:离线下载是杀手锏
  • 多存储聚合:本地 + S3 + OSS 按场景选
  • Nginx 反代 + HTTPS:生产必须
  • MySQL 而非 SQLite:20+ 用户必上
  • WebDAV 开启:方便客户端挂载
  • 备份三件套:db + conf + uploads
  • 日志接入 Loki:便于排障
  • 限速限容量:防止滥用
  • 关闭注册:内部用

2024+ 视角补充

本文写于 2023-06,2024-2026 期间 Cloudreve 关键演进:

  • Cloudreve 4.x(2024-2025 主流):全面 Go 1.22+ 重构WebDAV 性能优化多存储策略配额离线下载任务调度重构
  • Cloudreve 4.5+(2025-Q1):AI 智能分类 / 标签(基于文件内容自动生成);Markdown 实时协作(多人编辑);版本控制可视化
  • Cloudreve 4.7+(2025-Q3):S3 直传(绕过 Cloudreve 中转,大文件 100GB+ 上传性能提升 10x);WebAssembly 在线预览(Office / PDF / 图片 / 视频 100+ 格式)
  • Cloudreve 商业版(4.x 起):Pro 版提供视频转码(HLS / DASH)、AI OCR 全文检索团队协作(DAU>100)——年付 1k-10k
  • Aria2 / AriaNg 替代:2024+ qbittorrent-nox(BT 离线)越来越流行
  • 替代品(2024+ 视角):
    • NextCloud 28+(自托管网盘"国民首选",已 GA)
    • Alist 3.x多存储聚合 + WebDAV——Cloudreve 的开源竞品)
    • FileBrowser Quantum(极简文件管理)
    • PhotoPrism / Immich(AI 照片管理)

实战建议(2025-2026 视角)

  • 多存储聚合 / 团队网盘Cloudreve 4.7+ Pro 仍是首选
  • 个人 / 极简Alist 3.x(轻量、开源、纯前端)
  • 家用 NAS / AI 照片Immich 1.100+(自托管 Google Photos 替代)
  • 办公协作NextCloud 28+ + OnlyOffice / Collabora——办公场景仍是 NextCloud 强项
  • 纯对象存储MinIO / S3 仍是基础

下一步

使用 Hugo 构建
主题 StackJimmy 设计