29.9 OnlyOffice 部署(基于 PostgreSQL)

本节说明在 FreeBSD 上通过 pkg 部署 OnlyOffice,并与 Nginx + Nextcloud 协同工作的完整步骤。

安装 Nextcloud 和 Nginx

OnlyOffice 需与 Nextcloud 配合使用,首先在另一台机器上安装 Nextcloud 和 Nginx。安装完成后,才能开始部署 OnlyOffice 文档服务器。

安装 OnlyOffice

使用 pkg 包管理器安装 OnlyOffice 是最简便的方式,执行以下命令完成安装:

# pkg install onlyoffice-documentserver

或者使用 Ports 方式安装 OnlyOffice:

# cd /usr/ports/www/onlyoffice-documentserver/
# make install clean

查看 OnlyOffice 安装信息

目录结构:

/
├── usr
   └── local
       ├── etc
          ├── onlyoffice
             └── documentserver
                 ├── local.json                      # OnlyOffice 本地配置文件
                 ├── default.json                    # OnlyOffice 默认配置文件
                 ├── nginx
                    └── ds.conf                     # OnlyOffice Nginx 配置
                 └── supervisor
                     └── *.conf                      # OnlyOffice supervisord 配置
          └── supervisord.conf                        # supervisord 主配置文件
       ├── bin
          ├── documentserver-pluginsmanager.sh       # 插件管理器脚本
          └── documentserver-update-securelink.sh    # 安全链接更新脚本
       └── www
           └── onlyoffice
               └── documentserver
                   └── server
                       └── schema
                           ├── postgresql
                              ├── createdb.sql      # PostgreSQL 数据库创建脚本
                              └── upgrade           # PostgreSQL 升级脚本
                           └── mysql
                               ├── createdb.sql      # MySQL 数据库创建脚本
                               └── upgrade           # MySQL 升级脚本
└── var
    ├── log
       └── onlyoffice
           └── documentserver
               └── converter
                   └── out.log                        # OnlyOffice 日志文件
    └── db
        └── rabbitmq
            └── .erlang.cookie                          # RabbitMQ Erlang Cookie

安装完成后,查看安装包的说明文档,了解必要的配置和注意事项:

配置服务

了解安装信息后,需配置 OnlyOffice 相关服务的开机自启。

配置数据库

OnlyOffice 需要数据库存储数据,本节使用 PostgreSQL 作为数据库。请自行参照本书其他章节,完成 PostgreSQL 数据库的安装、初始化和服务自启。

随后执行以下命令使用数据库:

配置 rabbitmq

OnlyOffice 需使用 RabbitMQ 作为消息队列服务。启动服务:

第一步:

第二步:

第三步:

允许局域网访问

OnlyOffice 默认配置不允许私有 IP 地址访问,需修改配置以允许局域网访问。将以下片段加入 /usr/local/etc/onlyoffice/documentserver/local.json 文件:

即:

配置 Nginx

需配置 Nginx 提供 OnlyOffice 的 Web 访问服务。编辑 /usr/local/etc/nginx/nginx.conf 文件,将

添加至 http 配置块内:

示例:

配置 supervisord

OnlyOffice 使用 supervisord 来管理其服务进程。编辑 /usr/local/etc/supervisord.conf 文件,找到末尾的 ;[include],删除行首的分号:

即:

启动服务

所有配置完成后,可启动 OnlyOffice 文档服务。

直接访问 IP 地址,如下图所示:

Document Server is running

配置 Nextcloud

OnlyOffice 文档服务启动后,需在 Nextcloud 中配置 OnlyOffice 插件。打开 Nextcloud:

安装 OnlyOffice 插件,可访问 ip/nextcloud/index.php/settings/apps/office/onlyoffice

onlyoffice

点击头像,随后进入管理设置,找到 OnlyOffice,设置如下(注意确认密钥是否为空):

onlyoffice

完成

所有配置完成后,可测试 OnlyOffice 功能,预览几个文件:

onlyoffice
onlyoffice
onlyoffice

故障排除与未竟事宜

如在使用 OnlyOffice 时遇到问题,可查看相关日志文件排查。本节还列出了有待完善的事项。

OnlyOffice 的日志位于 /var/log/onlyoffice/documentserver/converter/out.log

参考文献

最后更新于