1. 为什么要在绿联NAS上部署OnlyOffice容器?
最近几年,越来越多的团队开始使用NAS作为文件存储和协作中心。我自己也是从2020年开始把工作文档全部迁移到NAS上,但一直有个痛点:每次编辑Office文档都要下载到本地,修改完再上传回去,特别麻烦。直到发现了OnlyOffice这个神器,它可以直接在浏览器里编辑Word、Excel、PPT,就像使用本地Office软件一样流畅。
绿联NAS的Docker功能让部署OnlyOffice变得特别简单。我实测下来,这套方案比直接购买商业云文档服务便宜至少80%,而且所有数据都保存在自己的NAS上,安全性更有保障。配合Cloudreve这个开源的网盘系统,可以实现类似Google Drive的体验,但完全私有化部署。
2. 部署前的准备工作
2.1 硬件配置检查
在开始安装前,强烈建议先检查下你的绿联NAS是否符合以下配置要求:
- CPU:至少双核2GHz,我用的绿联DX4600搭载Intel N5105处理器完全够用
- 内存:最低4GB,建议8GB以上。实测发现当多人同时编辑文档时,内存占用会飙升
- 存储空间:除了系统占用外,至少预留40GB空间。OnlyOffice容器本身约3GB,还需要空间存放字体、日志等
- 网络:需要能访问外网以下载Docker镜像,内网建议千兆环境
提示:如果NAS性能较弱,可以考虑限制OnlyOffice的CPU和内存使用量,后面会具体说明设置方法。
2.2 软件环境准备
确保你的绿联NAS已经完成这些基础设置:
- 在绿联云APP中开启开发者模式
- 安装Docker管理器(现在绿联NAS一般都预装了)
- 准备一个用于持久化存储的文件夹,比如我创建了
/DATA/AppData/onlyoffice
3. 详细安装步骤
3.1 拉取OnlyOffice镜像
打开绿联NAS的Docker管理界面,在镜像仓库搜索onlyoffice/documentserver,选择latest标签下载。这个镜像大约2.91GB,根据网络情况可能需要等待一段时间。
如果下载速度慢,可以尝试修改Docker镜像源。我常用的国内源包括:
code复制https://docker.mirrors.ustc.edu.cn
https://hub-mirror.c.163.com
3.2 容器配置详解
创建容器时,这些设置特别重要:
存储卷映射(建议全部使用绑定挂载):
/usr/share/fonts/truetype/custom→ 存放自定义字体/var/lib/onlyoffice→ 文档数据/var/log/onlyoffice→ 日志文件
端口设置:
- 容器80端口映射到NAS的8088端口(避免与其它服务冲突)
- 如果启用HTTPS,还需要映射443端口
环境变量:
bash复制TZ=Asia/Shanghai
WOPI_ENABLED=true
JWT_SECRET=你的复杂密钥(建议32位随机字符串)
重启策略:建议设为"总是",这样NAS重启后容器会自动运行
3.3 性能优化技巧
根据我的实测经验,这些调整可以显著提升性能:
- 在绿联Docker的高级设置中,限制CPU使用为80%,避免资源耗尽
- 给OnlyOffice分配固定内存,比如4GB
- 关闭不需要的服务(如示例文档),修改
/etc/onlyoffice/documentserver/default.json配置文件
4. 与Cloudreve深度集成
4.1 Cloudreve端的配置
安装好Cloudreve后,进入管理后台,找到"参数设置"-"预览与编辑",开启Office文档预览功能。关键配置项:
- WOPI客户端地址:
http://NAS内网IP:8088 - JWT密钥:必须与OnlyOffice容器设置的
JWT_SECRET完全一致 - 文件扩展名:建议添加.doc、.docx、.xls、.xlsx、.ppt、.pptx
4.2 实际使用体验
配置完成后,在Cloudreve中点击Office文档时,会直接调用OnlyOffice打开。我测试过的功能包括:
- 多人同时编辑Word文档(显示不同用户的光标位置)
- Excel公式计算完全兼容
- PPT动画效果正常显示
- 历史版本对比(需要Cloudreve Pro版)
4.3 常见问题排查
如果遇到文档无法打开的情况,可以按这个顺序检查:
- 查看OnlyOffice容器日志:
docker logs onlyoffice - 确认Cloudreve和OnlyOffice的网络互通
- 检查JWT密钥是否一致
- 测试直接访问OnlyOffice的demo页面是否正常
5. 安全加固建议
5.1 启用HTTPS加密
建议通过反向代理配置HTTPS,我用Nginx的配置如下:
nginx复制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:8088;
proxy_set_header Host $host;
}
}
5.2 定期备份策略
OnlyOffice的关键数据包括:
- 文档数据(/var/lib/onlyoffice映射的目录)
- PostgreSQL数据库(/var/lib/postgresql)
- 配置文件
我写了个简单的备份脚本,每天凌晨3点自动运行:
bash复制#!/bin/bash
tar -czvf /mnt/backup/onlyoffice_$(date +%Y%m%d).tar.gz \
/DATA/AppData/onlyoffice \
/etc/onlyoffice
6. 进阶使用技巧
6.1 添加中文字体
默认安装缺少一些常用中文字体,解决方法:
- 将字体文件(如微软雅黑)放入映射的
/usr/share/fonts/truetype/custom目录 - 在容器内执行:
bash复制documentserver-generate-allfonts.sh
6.2 手机端适配
虽然OnlyOffice官方有移动端APP,但我发现直接用浏览器访问效果更好。在Cloudreve移动端点击文档时,可以设置为"在浏览器中打开"。
6.3 插件扩展
OnlyOffice支持插件系统,我常用的有:
- 翻译插件
- 二维码生成器
- 电子签名工具
安装方法:下载插件包,上传到/var/www/onlyoffice/documentserver/sdkjs-plugins目录
这套方案我已经稳定使用一年多,处理过上千份办公文档。最大的感受是既保留了NAS的隐私性,又获得了接近商业云文档的使用体验。对于10人以内的小团队,完全能满足日常协作需求。如果遇到性能问题,优先考虑升级NAS的内存和SSD缓存,效果立竿见影。