自学内容网 自学内容网

ONLYOFFICE 快速部署教程:让你的私有云盘也可以预览和编辑 Office 文档

ONLYOFFICE Docs (原 ONLYOFFICE Document Server) 是一款强大的开源在线办公套件,包含用于文本、电子表格和演示文稿的查看器和编辑器,完全兼容 Office Open XML 格式(.docx、.xlsx、.pptx),并支持实时协作编辑。本文将指导你如何使用 Docker 快速部署 ONLYOFFICE Docs 社区版,轻松搭建自己的在线办公平台。

ONLYOFFICE Docs 简介

ONLYOFFICE Docs 提供类似微软 Office 的在线编辑体验,你可以用它创建和编辑文档、电子表格和演示文稿。它支持实时协作编辑,方便团队协同工作。此外,ONLYOFFICE Docs 还支持丰富的格式,包括 DOC、DOCX、TXT、ODT、RTF、ODP、EPUB、ODS、XLS、XLSX、CSV、PPTX 和 HTML 等。

ONLYOFFICE Docs 可以与 ONLYOFFICE Workspace 集成,也可以与第三方同步和共享解决方案(例如 Nextcloud、ownCloud、Seafile)集成,在其界面内启用文档预览和协作编辑功能。

服务器准备

在开始部署之前,请确保你的系统满足以下最低要求:

  • 内存: 4 GB 或以上
  • CPU: 双核 2 GHz 或以上
  • 交换空间: 至少 2 GB
  • 硬盘空间: 至少 2 GB 可用空间
  • 操作系统: 64 位 Linux 发行版(例如 CentOS、Debian、Ubuntu 等),内核版本 3.8 或更高版本
  • Docker: 版本 1.9.0 或更高版本 (推荐最新版)

我将会以 雨云 为例,带大家创建一台自己的云服务器,以便尝试本篇文章的内容。

注册链接: https://www.rainyun.com/NTEzMTM1_?s=blog

创建云服务器

以下内容只是参考,具体按照自己的需求选择配置即可。

点击“云产品”→“云服务器”→“立即购买”。

云服务器购买页面

建议选择距离你较近的区域,以降低延迟。
选择服务器区域

选择配置。

选择服务器配置

选择 Ubuntu 22.04 版本,勾选预装 Docker 最新版。

选择操作系统和 Docker

点击“立即购买”,并完成后续购买流程。购买完成后,等待服务器部署完毕,进入管理面板,找到远程连接信息。

服务器管理面板

远程连接信息

使用 PowerShell 进行远程连接:输入 ssh root@你的服务器IP (例如 ssh root@154.9.227.239),首次连接需输入 yes,然后回车即可登录。

PowerShell 远程连接

登录成功

到这里,我们的服务器就创建完毕,并且能够远程 SSH 访问了。

Docker 部署教程

1. 运行 Docker 镜像

最简单的部署方式是直接运行 ONLYOFFICE Docs 的 Docker 镜像:

sudo docker run -i -t -d -p 80:80 onlyoffice/documentserver

该命令将在端口 80 上运行 ONLYOFFICE Docs。

2. 数据持久化

为了避免数据丢失,建议将容器内的数据目录挂载到主机目录。以下命令将 ONLYOFFICE Docs 的日志、数据、缓存和数据库目录挂载到主机:

sudo docker run -i -t -d -p 80:80 \
    -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice  \
    -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data  \
    -v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
    -v /app/onlyoffice/DocumentServer/rabbitmq:/var/lib/rabbitmq \
    -v /app/onlyoffice/DocumentServer/redis:/var/lib/redis \
    -v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql  onlyoffice/documentserver

请根据实际情况修改主机目录路径。

3. 端口配置

你可以使用 -p 参数修改 ONLYOFFICE Docs 的端口。例如,要将 ONLYOFFICE Docs 运行在 8080 端口,可以使用以下命令:

sudo docker run -i -t -d -p 8080:80 onlyoffice/documentserver
4. HTTPS 配置

为了提高安全性,建议使用 HTTPS 访问 ONLYOFFICE Docs。 你可以使用 Let’s Encrypt 自动生成和更新证书:

sudo docker run -i -t -d -p 80:80 -p 443:443 \
    -e LETS_ENCRYPT_DOMAIN=your_domain -e LETS_ENCRYPT_MAIL=your_mail  onlyoffice/documentserver

请将 your_domainyour_mail 替换为你的域名和邮箱地址。

你也可以手动生成自签名证书,并将其放置在 /app/onlyoffice/DocumentServer/data/certs/ 目录下。

环境变量

ONLYOFFICE Docs 提供了丰富的环境变量,可以用于自定义配置。以下列举一些常用的环境变量:

环境变量说明默认值
ONLYOFFICE_HTTPS_HSTS_ENABLED是否启用 HSTStrue
SSL_CERTIFICATE_PATHSSL 证书路径/var/www/onlyoffice/Data/certs/tls.crt
SSL_KEY_PATHSSL 密钥路径/var/www/onlyoffice/Data/certs/tls.key
DB_TYPE数据库类型postgres
JWT_ENABLED是否启用 JWT 验证true
JWT_SECRETJWT 密钥随机值

更多环境变量请参考官方文档的 “Available Configuration Parameters” 部分。

集成到 Cloudreve 中

由于 Cloudreve 需要 ONLYOFFICE 开启 WOPI_ENABLED ,可在创建容器时指定 WOPI_ENABLEDtrue 来开启:

docker run -i -t -d -p 8080:80 -e WOPI_ENABLED=true onlyoffice/documentserver

创建好容器后,可以手动访问 http://your_server_ip:8080 查看是否启动完毕。

ONLYOFFICE 启动成功

在 Cloudreve 中设置

Cloudreve 的部署,可以参考我这篇文章 : https://blog.csdn.net/weixin_53510183/article/details/143416437

在 后台 - 参数设置 - 图像与预览 - 文件预览 - WOPI 客户端 中开启 “使用 WOPI” 并在 “WOPI Discovery Endpoint” 中填入 http://<你的服务主机>/hosting/discovery。保存后可在前台测试文档预览和编辑:

Cloudreve 中配置 ONLYOFFICE

集成到 Seafile

Seafile 的部署,可以参考我这篇文章 : https://blog.csdn.net/weixin_53510183/article/details/143625005

正常按照部署教程使用 Docker 部署即可。

设置 OnlyOffice 自动保存

使用 OnlyOffice 打开文件时,OnlyOffice 只会在用户关闭页面后向 Seafile 发送文件保存请求。如果用户长时间未关闭页面,则用户对文件的更改将不会及时保存在 Seafile 上。

您可以通过更改 OnlyOffice 的配置来设置自动保存。

  1. 进入到 onlyoffice/documentserver 容器中;

  2. 打开 OnlyOffice 的配置文件: /etc/onlyoffice/documentserver/local.json

  3. 添加以下配置信息:

    {
        "services": {
            "CoAuthoring": {
                "autoAssembly": {
                    "enable": true,
                    "interval": "5m"
                }
            }
        }
    }
    
  4. 重启 OnlyOffice: supervisorctl restart all

配置 Seafile 服务

添加以下配置信息到 seahub_settings.py

# Enable Only Office
ENABLE_ONLYOFFICE = True
VERIFY_ONLYOFFICE_CERTIFICATE = False
ONLYOFFICE_APIJS_URL = 'http://your_OnlyOffice_server/web-apps/apps/api/documents/api.js'
ONLYOFFICE_FILE_EXTENSION = ('doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'odt', 'fodt', 'odp', 'fodp', 'ods', 'fods')
ONLYOFFICE_EDIT_FILE_EXTENSION = ('docx', 'pptx', 'xlsx')
ONLYOFFICE_JWT_SECRET = 'your-secret-string'   # 自定义secret

修改 your_OnlyOffice_server 为你自己的 ONLYOFFICE 服务器 IP 或域名。

然后重启 Seafile 和 Seahub 服务:

./seafile.sh restart
./seahub.sh restart

或者:

service seafile-server restart
service seahub restart

最后,当你点击一个文档应该会看到一个新的预览页面。

相关链接
雨云 - 新一代云服务提供商: https://www.rainyun.com/NTEzMTM1_?s=blog
面试鸭:https://mianshiya.com/?shareCode=sq29yv
我的博客:https://blog.ivwv.site


原文地址:https://blog.csdn.net/weixin_53510183/article/details/143644998

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!