如何部署onlyOffice documentServer 9.4.0?

Linux基础

1 基础知识

1.1 onlyOffice的简介

– onlyOffice Document Server是一个在线办公套件
– onlyOffice Document Server可用于文本、电子表格和演示文稿的查看和编辑
– onlyOffice Document Server与Office Open XML格式完全兼容
– onlyOffice Document Server支持“.docx”、“.xlsx”、“.pptx”且支持实时协作编辑

1.2 onlyOffice的版本

– Community Edition (onlyoffice-documentserver package)
– Enterprise Edition (onlyoffice-documentserver-ee package)
– Developer Edition (onlyoffice-documentserver-de package)
注:onlyOffice Document Server从6.0版本开始拆分为三个版本

1.3 onlyOffice的功能

– 文件编辑器
– 电子表格编辑器
– 适用于IOS的应用程序
– 协同编辑
– 象形文字支持
– 支持所有主流格式DOC,DOCX,TXT,ODT,RTF,ODP,EPUB,ODS,XLS,XLSX,CSV,PPTX,HTML

1.4 onlyOffice的安装要求

– 内存:4 GB以上
– CPU:双核2 GHz或更高
– 交换:至少2 GB
– 硬盘:至少2 GB的可用空间
支持的系统发行版,
– Red Hat、CentOS x64
– Debian,Ubuntu x64
– 或与其他内核版本3.8或更高版本兼容的发行版
– Docker:1.9.0或更高版本

2 最佳实践

2.1 部署前的准备

hostname = onlyOffice.cmdschool.org
ip address = 10.168.0.81
os = Oracle Linux 9.x x86_64
selinux = disable
epel = enable
open port= http https
具体请参阅以下文档完成,

如何完成CentOS 7.x的基本服务?

2.2 安装Nginx

2.2.1 安装软件包

yum install -y https://nginx.org/packages/rhel/9/x86_64/RPMS/nginx-1.30.4-1.el9.ngx.x86_64.rpm

2.2.2 修改nginx配置

cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.defautl
vim /etc/nginx/nginx.conf

配置修改如下,

user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}

2.2.3 启动并设置服务自启动

systemctl start nginx.service
systemctl enable nginx.service

2.3 安装ONLYOFFICE Docs

2.3.1 安装软件包

yum install -y https://download.onlyoffice.com/repo/centos/main/noarch/onlyoffice-repo.noarch.rpm
yum install -y onlyoffice-documentserver-9.4.0 xorg-x11-font-utils cabextract fontconfig msttcore-fonts-installer

2.3.2 配置应用

bash documentserver-configure.sh

向导如下,

# documentserver-configure.sh 
Generating WOPI private key...Done
Generating WOPI public key...Done
Restarting services... OK
JWT is enabled by default. A random secret is generated automatically. Run the command '# documentserver-jwt-status.sh' to get information about JWT.

根据上面的提示,查询JWT的信息,你需要执行如下命令,

documentserver-jwt-status.sh

正常可见如下显示,

Your JWT settings:
JWT enabled -  true
JWT secret  -  ***************
JWT header  -  Authorization

如果你需要重新生成以上密码,请执行如下命令,

documentserver-configure.sh --wopienabled true

实际上以上密码在如下配置文件中定义,

cat /etc/onlyoffice/documentserver/local.json

如果你修改以上配置文件的密码,你需要执行如下命令才能使配置生效,

systemctl restart ds-docservice.service

2.3.3 配置SSL

cp /etc/nginx/conf.d/ds.conf /etc/nginx/conf.d/ds_443.conf
chmod u+w /etc/nginx/conf.d/ds_443.conf
vim /etc/nginx/conf.d/ds_443.conf

加入如下配置,

server {
  listen 0.0.0.0:443 ssl;
  listen [::]:443 ssl default_server;
  server_tokens off;
  ssl_certificate /etc/nginx/wildcard.cmdschool.org.crt;
  ssl_certificate_key /etc/nginx/cmdschool.org.key;
  ssl_session_timeout 5m;
  ssl_protocols TLSv1.2;
  ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
  ssl_prefer_server_ciphers on;

  set $secure_link_secret 8nCd3gOyRiJWWnS0hVpW;
  include /etc/nginx/includes/ds-*.conf;
}

根据以上配置文件,你需要“onlyoffice.cmdschool.org”的nginx证书,你可以通过如下链接申请(证书请自行存于“/etc/nginx/”目录),
https://cloud.tencent.com/product/ssl
配置完成后,需要执行以下命令重载使配置生效,

systemctl reload nginx.service

另外,官方建议永久修改需要编辑以下文件,

cp /etc/onlyoffice/documentserver/nginx/ds-ssl.conf.tmpl /etc/onlyoffice/documentserver/nginx/ds-ssl.conf
vim /etc/onlyoffice/documentserver/nginx/ds-ssl.conf

2.3.4 设置防火墙

firewall-cmd --permanent --add-service https --add-service http
firewall-cmd --reload
firewall-cmd --list-all

2.4 测试服务

2.4.1 测试服务欢迎页面

https://onlyoffice.cmdschool.org/welcome/

根据页面提示,你需要执行如下命令启用范例服务,

systemctl start ds-example
systemctl enable ds-example

另外,临时性的名称解析你可以按下键盘的【Win+R】键,然后输入如下命令,

notepad \Windows\System32\drivers\etc\hosts

然后加入如下配置,

10.168.0.81 onlyoffice.cmdschool.org

2.4.2 测试服务api

curl -k -s --connect-timeout 10 --max-time 30 https://onlyoffice.cmdschool.org/healthcheck

正常你可以见到如下返回值,

true

2.4.3 日志排错方法

tail -f /var/log/onlyoffice/documentserver/docservice/err.log
tail -f /var/log/onlyoffice/documentserver/docservice/out.log

2.4.4 测试文件预览

https://onlyoffice.cmdschool.org/example/

如上图所示
单击【upload】->【edit】即可进入文件的编辑测试模式

参阅文档
===============

安装onlyoffice社区版本
————————-
https://helpcenter.onlyoffice.com/docs/installation/docs-community-install-centos.aspx

配置SSL
————–
https://helpcenter.onlyoffice.com/installation/docs-community-https-linux.aspx

官方主页
————————-
https://www.onlyoffice.com/zh/

官方github
————————
https://github.com/ONLYOFFICE/DocumentServer/releases

没有评论

发表回复

Linux基础
如何设置存储的多路径?

1 前言 一个问题,一篇文章,一出故事。 笔者今天需要给服务器附加一台iSCSI存储,但是存储是一个 …

Linux基础
如何注销Linux用户并禁止其登陆?

1 前言 一个问题,一篇文章,一出故事。 今天笔者基于数据同步的需求需要限制数据上传用户登陆,因此整 …

Linux基础
如何卸载guardicore?

1 前言 一个问题,一篇文章,一出故事。 今天在测试环境发现yum安装异常,报无法与源服务器通讯。 …