技术文章
1.介绍
2.安装前系统准备
3.在CentOS上安装Docker
4.安装 onlyoffice document
5.验证是否成功
6.启动o2oa服务器
7.应用市场安装onlyOffice协作应用以及控件
8.连接并配置
9.流程中嵌入onlyOffice
Developer Edition允许您在本地服务器上安装ONLYOFFICE Docs并将在线编辑器与您的 Web 应用程序集成。
ONLYOFFICE Docs是一个在线办公套件,包括文本、电子表格和演示文稿的查看器和编辑器,完全兼容 Office Open XML 格式:.docx、.xlsx、.pptx,并支持实时协作编辑。
功能性
文档编辑器
电子表格编辑器
演示文稿编辑器
移动网络查看器
移动网络编辑器
协作编辑
象形文字支持
支持所有流行格式:DOC、DOCX、TXT、ODT、RTF、ODP、EPUB、ODS、XLS、XLSX、CSV、PPTX、HTML
本指南将向您展示如何将ONLYOFFICE Docs Developer Edition Linux 版本安装到您的机器上。
中央处理器 双核2 GHz或更高
内存 2 GB或更多
硬盘 至少40 GB的可用空间
其他要求 至少4 GB的交换空间
操作系统 RHEL 7或 CentOS 7
其他要求
PostgreSQL: version 12.9 or later
NGINX: version 1.3.13 or later
Redis
RabbitMQ
地址:https://docs.docker.com/engine/install/centos/
在新主机上首次安装 Docker Engine 之前,您需要设置 Docker 存储库。之后,您可以从存储库安装和更新 Docker。
安装yum-utils包(提供yum-config-manager 实用程序)并设置稳定的存储库。
$ sudo yum install -y yum-utils
执行命令时,如果使用root登录,那么可以去掉sudo命令。
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
这些存储库包含在docker.repo上面的文件中,但默认情况下是禁用的。
您可以在稳定存储库旁边启用它们。以下命令启用存储库。
$ sudo yum-config-manager --enable docker-ce-nightly
要启用测试通道,请运行以下命令:
$ sudo yum-config-manager --enable docker-ce-test
您可以通过运行 带有标志的命令来禁用nightly或test存储库。
要重新启用它,请使用该标志。
以下命令禁用夜间存储库。
$ sudo yum-config-manager --disable docker-ce-nightly
1.安装最新版本的 Docker Engine 和 containerd,或者进入下一步安装特定版本:
$ sudo yum install docker-ce docker-ce-cli containerd.io
如果提示接受 GPG 密钥,请验证指纹是否匹配 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35,如果是,则接受它。
2.要安装特定版本的 Docker Engine,请在 repo 中列出可用版本,然后选择并安装:
一个。列出并排序您的存储库中可用的版本。此示例按版本号从最高到最低对结果进行排序,并被截断:
[root@localhost ~]# yum list docker-ce --showduplicates | sort -r
已加载插件:fastestmirror, langpacks
已安装的软件包
可安装的软件包
* updates: mirrors.aliyun.com
Loading mirror speeds from cached hostfile
* extras: mirrors.aliyun.com
docker-ce.x86_64 3:20.10.9-3.el7 docker-ce-test
docker-ce.x86_64 3:20.10.9-3.el7 docker-ce-stable
docker-ce.x86_64 3:20.10.8-3.el7 docker-ce-test
docker-ce.x86_64 3:20.10.8-3.el7 docker-ce-stable
docker-ce.x86_64 3:20.10.7-3.el7 docker-ce-test
docker-ce.x86_64 3:20.10.7-3.el7 docker-ce-stable
docker-ce.x86_64 3:20.10.6-3.el7 docker-ce-test
docker-ce.x86_64 3:20.10.6-3.el7 docker-ce-stable
docker-ce.x86_64 3:20.10.5-3.el7 docker-ce-test
docker-ce.x86_64 3:20.10.5-3.el7 docker-ce-stable
docker-ce.x86_64 3:20.10.4-3.el7 docker-ce-test
docker-ce.x86_64 3:20.10.4-3.el7 docker-ce-stable
docker-ce.x86_64 3:20.10.3-3.el7 docker-ce-test
docker-ce.x86_64 3:20.10.3-3.el7 docker-ce-stable
docker-ce.x86_64 3:20.10.2-3.el7 docker-ce-test
返回的列表取决于启用了哪些存储库,并且特定于您的 CentOS 版本(.el7在本例中由后缀表示)。
通过其完全限定的包名称安装特定版本,即包名称 ( docker-ce) 加上版本字符串(第 2 列),从第一个冒号 ( :) 开始,一直到第一个连字符,用连字符 ( -) 分隔。例如,docker-ce-20.10.9。
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
$ sudo yum install docker-ce-20.10.9 docker-ce-cli-20.10.9 containerd.io
3.启动 Docker。
$ sudo systemctl start docker
https://helpcenter.onlyoffice.com/installation/docs-community-install-centos.aspx
要为 RHEL/CentOS 设置 yum 存储库,请创建名为/etc/yum.repos.d/nginx.repo以下内容的文件:
vi /etc/yum.repos.d/nginx.repo
在文件中添加如下内容:
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
保存文件。
安装NGINX:
sudo yum install nginx
安装完成之后编辑NGINX配置文件/etc/nginx/nginx.conf,
vi /etc/nginx/nginx.conf
使其看起来如下所示:
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/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;
}
sudo yum install epel-release
安装包含在您的 CentOS 版本中的 PostgreSQL版本:
sudo yum install postgresql postgresql-server
如果您想从 PostgreSQL 存储库安装其他PostgreSQL版本,请参阅官方 PostgreSQL 文档以获取更多详细信息。
初始化 PostgreSQL 数据库
sudo service postgresql initdb sudo chkconfig postgresql on
打开IPv4 和 IPv6 localhost的“信任”身份验证方法
在文本编辑器中打开文件/var/lib/pgsql/data/pg_hba.conf,
vi /var/lib/pgsql/data/pg_hba.conf
找到host all all 127.0.0.1/32 ident字符串并将其替换为以下字符串:
host all all 127.0.0.1/32 trust
然后找到host all all ::1/128 ident字符串并将其替换为以下字符串:
host all all ::1/128 trust
保存更改。
重启 PostgreSQL 服务:
sudo service postgresql restart
创建 PostgreSQL 数据库和用户:
您可以指定任何用户名和密码。首先运行命令:
cd /tmp
以防止could not change directory to "/root"从 root 运行时发出警告。然后必须创建数据库和用户:
sudo -u postgres psql -c "CREATE DATABASE onlyoffice;"
sudo -u postgres psql -c "CREATE USER onlyoffice WITH password 'onlyoffice';"
sudo -u postgres psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"
sudo yum install redis
启动redis服务并启用开机启动:
sudo service redis start
sudo systemctl enable redis
sudo yum install rabbitmq-server
在 CentOS 8 上安装 RabbitMQ,请参考官方说明。
启动rabbitmq服务并启用开机启动:
sudo service rabbitmq-server start
sudo systemctl enable rabbitmq-server
安装cabextract和xorg-x11-font-utils包:
sudo yum install cabextract xorg-x11-font-utils
对于 CentOS 7.8(2003),fontconfig还需要:
sudo yum install fontconfig
安装 msttcore 字体包:
sudo rpm -i https://deac-ams.dl.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
安装 msttcore 字体包需要一些时间,请耐心等待。
使用以下命令添加 yum ONLYOFFICE Docs存储库:
sudo yum install https://download.onlyoffice.com/repo/centos/main/noarch/onlyoffice-repo.noarch.rpm
onlyoffice-documentserver-de 是指 ONLYOFFICE Docs Developer Edition,也可以查看相应的版本安装企业版或者社区版
执行以下命令:
sudo yum install onlyoffice-documentserver-de
下载安装文件可能需要一些时间:
运行相关服务并在启动时启用它们的启动:
sudo service supervisord start
sudo systemctl enable supervisord
sudo service nginx start
sudo systemctl enable nginx
之后,ONLYOFFICE Docs将作为一个进程运行。
该软件包将像任何其他 rpm 软件包一样进行更新。
默认情况下, ONLYOFFICE Docs使用端口80侦听传入连接。从版本4.3开始,如果您打算使用ONLYOFFICE Docs的端口而不是默认端口,则可以更改它。
如果要更改默认端口,请确保它对传入/传出连接打开。请参阅ONLYOFFICE Docs使用的端口的完整列表。
为此,您需要编辑运行命令的DS_PORT环境变量:
export DS_PORT = 80
请写端口号,而不是<PORT_NUMBER>上面命令中的,我们这里一般默认80端口
运行documentserver-configure.sh脚本:
bash documentserver-configure.sh
您将被要求指定 PostgreSQL 、Redis和 RabbitMQ 连接参数。使用以下数据:
对于PostgreSQL:
Host: localhost
Database: onlyoffice
User: onlyoffice
Password: onlyoffice
对于Redis:
Host: localhost
对于RabbitMQ:
Host: localhost
User: guest
Password: guest
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
配置完成后,您可以在浏览器地址栏中输入:
以打开ONLYOFFICE Docs欢迎页面,您将在其中找到有关如何使用提供的 API启用文档示例或将在线编辑器集成到 Web 应用程序中的进一步说明.
在欢迎页最后,有启动示例程序和设置自动启动的命令:
sudo supervisorctl start ds:example
sudo sed 's,autostart=false,autostart=true,' -i /etc/supervisord.d/ds-example.ini
设置服务器域名:
通知网络管理员,nginx配置 hosts 对应ip地址 和域名,这里我们设置成:ip -->only.o2oa.net
安装成功后输入地址进行验证:
打开地址:http://only.o2oa.net/welcome/
特别注意点:要设置host 配置域名,需要同域。 例如当前:
onlyoffice.o2oa.net 是 onlyoffice 服务器域名
yangli.o2oa.net 是 o2oa服务器域名
之前我们已经以管理员账号登录到了系统,此时点击左上角主菜单——打开系统设置——进入云服务配置,会看到如下界面:
第一个绿色的对勾,表示服务器在网络上可以连接到O2OA的云服务器;第二红叉表示,我们尚未登录到O2OA云服务器。
如果您以前创建过O2云账号,在此处可以选择“登录到O2云”,现在我们是一台新的服务器,所以点击“注册O2云账号”来创建新的账号。
填写所有的信息后,点击“注册O2云账号”,在信息填写无误的情况下,系统就会自动以此账号登录到O2云服务了。
在此我们说明一下O2云服务,它提供了应用市场,登录了O2云服务后,服务器会自动更新云服务器上的应用市场的目录列表,本地服务器才能及时获取到应用以及应用的更新。
如果说,您的服务器部署在内网,而且由于安全性要求,不允许连接到外部网络,在这种情况下,我们可以在允许访问外网的机器上,运行一台临时的O2OA服务器,连接到O2云后访问应用市场,安装需要的应用,并将其导出为.xapp文件。然后访问内网的服务器,通过应用中心的导入应用的功能,将本地的.xapp文件,导入到服务器即可。(这部分内容将在系统部署课程中详细介绍)
O2云登录成功后,系统会自动同步应用市场,这可能需要几分钟时间,同步完成后,就可以访问应用市场了。
接下来,我们开始使用这个onlyOffice在线协作的应用。如果onlyoffice在线协作应用还没有安装,是需要去应用市场安装的。打开应用市场:
点击需要安装的应用之后,需要查看安装说明,需要进入到数据中心平台,去编译所有数据表(数据中心平台--office在线协作数据--数据表--document表--编译所有数据表),然后重启。
安装好以后,就可以打开指定的链接使用了:http://{youip}/x_desktop/document.html?app=CloudDocument
我们要讲的是用onlyoffice控件作为正文编辑器。
通过公文模版去创建表单,输入表单的名称:公文-编辑
在正文部分,拖一个onlyOffice控件,现在是可以直接使用的。
打开系统菜单,找到应用市场,
注意点:重启服务器,正常启动
去配置的onlyOffice的服务器地址:浏览器打开地址: 把红框中的office.o2oa.net改成对应的onlyOffice服务器名字。
http://yangli.o2oa.net/o2_lib/onlyoffice/config.html
截图部分对应修改为安装的onlyoffice服务器相关地址,我们这边就配置成我们已经搭建好的onlyoffice服务器: only.o2oa.net(以自己的服务器域名为主,域名需要与O2OA服务器同域)。
补充说明了以后,我们再回到表单编辑器。
保存编辑表单,接下来创建阅读表单,编辑表单和阅读表单用在不同的处理环节上的。
阅读表单里把正文部分替换掉,换成onlyOffice的控件。
表单名称保存称:公文-阅读
表单设计好了以后,去设计流程,先确定环节的名称和流程的名称,并且关联上设计好的表单,拟稿,核稿,套红都是用编辑表单,可以对正文进行编辑的,确认环节使用阅读表单,对正文只能看不能改。配置处理人员,核稿和套红,分别选对应的处理人,保存流程设计。
如果对文字内容进行批注,再回到编辑表单来配置,开启评论功能。
至此,我们就完成了:为 CentOS 安装 ONLYOFFICE Docs Developer Edition以及在O2OA平台上接入OnlyOffice的工作。
上一篇:系统配置-流程催办提醒配置