参考资料

  1. Pony 是一个高性能、并发安全的编程语言,专为构建高并发系统设计
  2. Vaultwarden 是 Bitwarden 密码管理器的轻量级
  3. Spug 是一款开源的轻量级自动化运维平台
  4. DPanel 是一个轻量级的 Web 面板工具
  5. Elasticsearch 是一个开源的分布式搜索和分析引擎
  6. CentOS是一个基于 Red Hat Enterprise Linux(RHEL)源代码构建的开源 Linux 发行版
  7. api-firewall 是一个开源的 API 防火墙
  8. Docker镜像(Image)是什么?

以下是 ‌Cloudreve 与 OnlyOffice 集成配置指南‌,整合多平台实践经验与安全优化策略:

一、OnlyOffice Document Server 部署

Docker 快速部署‌

运行以下命令启用 WOPI 协议并启动 OnlyOffice 服务:

bash

Copy Code

docker run -d --restart=always --name onlyoffice \

  -p 1080:80 \

  -v /opt/onlyoffice/data:/var/www/onlyoffice/Data \

  -e WOPI_ENABLED=true \          # 强制启用 WOPI 协议:ml-citation{ref="1,3" data="citationList"}

  -e JWT_ENABLED=false \          # 若无需加密可关闭 JWT:ml-citation{ref="2" data="citationList"}

  onlyoffice/documentserver:7.4   # 确保版本 ≥6.4:ml-citation{ref="1" data="citationList"}

验证服务:访问 http://服务器IP:1080,确认显示 Welcome 页面。


存储与网络优化‌

映射 /var/www/onlyoffice/Data 目录至 SSD/NVMe 存储介质,提升文档读写性能。

若 Cloudreve 与 OnlyOffice 同主机,使用 Docker 内部网络通信(如 --network host)降低延迟。

二、Cloudreve 后台配置


修改文档预览服务地址‌


路径:‌Cloudreve 管理后台 → 参数设置 → 图像与预览 → 文件预览‌。

文档预览服务地址‌:填写 http://OnlyOffice_IP:1080/web-apps/apps/api/documents/api.js。

允许扩展名‌:添加 .docx, .xlsx, .pptx 等需协作的格式。


WOPI 协议集成‌

在 OnlyOffice 配置文件中 local.json 添加以下内容:

json

Copy Code

"wopi": {

  "enable": true,

  "host": "cloudreve.yourdomain.com"  // 替换为 Cloudreve 域名:ml-citation{ref="1,3" data="citationList"}

}

重启容器使配置生效:docker restart onlyoffice。


三、安全与性能增强

HTTPS 加密配置‌

通过 Nginx 反向代理配置 SSL 证书:

nginx

Copy Code

server {

  listen 443 ssl;

  server_name office.yourdomain.com;

  ssl_certificate /path/to/cert.pem;

  ssl_certificate_key /path/to/key.pem;

  location / {

    proxy_pass http://localhost:1080;  # 指向 OnlyOffice 容器:ml-citation{ref="2,7" data="citationList"}

  }

}

Cloudreve 预览地址改为 https://office.yourdomain.com/web-apps/...。


访问控制‌


防火墙仅开放 Cloudreve 服务器 IP 到 OnlyOffice 的 1080 端口。

启用 JWT 加密(生产环境推荐):

bash

Copy Code

docker run ... -e JWT_SECRET=your_strong_key:ml-citation{ref="2,8" data="citationList"}

Cloudreve 后台同步配置相同密钥。


四、功能验证与调试


基础功能测试‌

上传 Office 文件至 Cloudreve,点击「预览」应加载 OnlyOffice 编辑器。

编辑并保存文档,确认修改内容同步至 Cloudreve 存储。


常见问题处理‌

编辑器无法加载‌:检查浏览器控制台 Network 面板,排查跨域请求(CORS)拦截。

文档保存失败‌:

确认 Cloudreve 存储目录权限(需 Web 服务用户可写)。

排查 OnlyOffice 容器日志:docker logs onlyoffice。


五、高阶扩展

API 深度定制‌:参考 OnlyOffice 开发文档,在 view.html 中嵌入定制化编辑按钮与回调函数。

多节点负载均衡‌:部署多个 OnlyOffice 实例,通过 HAProxy 分发请求提升并发能力。


通过以上步骤可实现 ‌Cloudreve 与 OnlyOffice 的无缝集成‌,满足私有化文档协作需求。若需离线部署,需提前下载 Docker 镜像与字体依赖库。