ONLYOFFICE 安装对接指南

Posted 少年道码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ONLYOFFICE 安装对接指南相关的知识,希望对你有一定的参考价值。

ONLYOFFICE 文档是一个在线办公套件,包括文本文档、电子表格和演示文稿的查看器和编辑器,与包括 .docx、.xlsx、.pptx 在内的 Office Open XML 格式完全兼容,并支持实时协作编辑。为了安装这系统,也踩了不少坑,以下将我的安装过程分享下

Docker安装

添加docker下载仓库

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装docker-ce

sudo yum install docker-ce

启动docker-ce

systemctl start docker
systemctl enable docker

验证

docker --version
docker run hello-world

Docker Compose 安装

yum install epel-release
yum install -y python-pip
pip install docker-compose

报错
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-RkuQr1/setuptools/

解决方法1

如果在升级过程中报标题中的错误,则通过gt-pip.py文件进行安装(以python2.7为例):

先卸载安装的python-pip
sudo yum remove python-pip
下载get-pip.py文件

wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
sudo python get-pip.py

解决方法2

如果安装了python2-pip或者python-pip,先卸载
yum -y remove python2-pip python-pip
安装python2-pip
yum -y install python2-pip
安装zabbix-api
pip install zabbix-api

配置安装目录

创建映射目录,并授权

rm -rf /home/onlyoffice
mkdir -p /home/onlyoffice/DocumentServer/logs
mkdir -p /home/onlyoffice/DocumentServer/data
mkdir -p /home/onlyoffice/DocumentServer/lib
mkdir -p /home/onlyoffice/DocumentServer/rabbitmq
mkdir -p /home/onlyoffice/DocumentServer/redis
mkdir -p /home/onlyoffice/DocumentServer/db

docker-compose配置

version: \'2\'
services:
  onlyoffice-documentserver:
    image: onlyoffice/documentserver-de:7.3.3.49
    container_name: onlyoffice-documentserver
    depends_on:
      - onlyoffice-postgresql
      - onlyoffice-rabbitmq
    environment:
      - DB_TYPE=postgres
      - DB_HOST=onlyoffice-postgresql
      - DB_PORT=5432
      - DB_NAME=onlyoffice
      - DB_USER=onlyoffice
      - AMQP_URI=amqp://guest:guest@onlyoffice-rabbitmq
      # Uncomment strings below to enable the JSON Web Token validation.
      #- JWT_ENABLED=true
      #- JWT_SECRET=secret
      #- JWT_HEADER=Authorization
      #- JWT_IN_BODY=true
    ports:
      - \'80:80\'
      - \'443:443\'
    stdin_open: true
    restart: always
    stop_grace_period: 60s
    volumes:
          - /home/onlyoffice/DocumentServer/logs:/var/log/onlyoffice
          - /home/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data
          - /home/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice
          - /home/onlyoffice/DocumentServer/rabbitmq:/var/lib/rabbitmq
          - /home/onlyoffice/DocumentServer/redis:/var/lib/redis
          - /home/onlyoffice/DocumentServer/db:/var/lib/postgresql
       
  onlyoffice-rabbitmq:
    container_name: onlyoffice-rabbitmq
    image: rabbitmq
    restart: always
    expose:
      - \'5672\'

  onlyoffice-postgresql:
    container_name: onlyoffice-postgresql
    image: postgres:9.5
    environment:
      - POSTGRES_DB=onlyoffice
      - POSTGRES_USER=onlyoffice
      - POSTGRES_HOST_AUTH_METHOD=trust
    restart: always
    expose:
      - \'5432\'
    volumes:
      - postgresql_data:/var/lib/postgresql

volumes:
  postgresql_data:

配置完成后进入目录 执行 docker-compose up -d进行安装

查看secret

sudo docker exec [容器ID] /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json \'services.CoAuthoring.secret.session.string\'

官方实例

官方提供了各种语言的demo,以下为下载官方地址
https://api.onlyoffice.com/editors/demopreview#security

VUE实例

https://github.com/wytxer/demo-onlyoffice

实例配置

实例部署的时候很多人运行起来发现没有编辑权限,这个我第一次运用也是,因为我用的是localhost地址,官方是不允许这个的,所以我们要么部署上服务器,要么用本地的ipconfig /all查看本机IP来运行实例才行

以下为一些参考资料

http://events.jianshu.io/p/a5e8ef7e9062
https://blog.csdn.net/hotqin888/article/details/79337881
https://www.jianshu.com/p/6ce4d4ed7adb

onlyoffice 对接owncloud等在线编辑

操作步骤:

yum install docker -y
systemctl start docker
docker pull onlyoffice/documentserver
docker images

sudo docker run -i -t -d -p 80:80 onlyoffice/documentserver 创建容器
测试部署:访问http://ip如果出现下图就算部署成功

onlyoffice汉化:

1 界面汉化

找到插件代码

/var/www/owncloud/apps/onlyoffice/js/editor.js

进入这个文件修改界面字体

把这里的lang改成zh-CN就行了,重启apache

字体添加:

docker exec -it test1 bash 进入容器

cd /usr/share/fonts/

rm -rf X11

cd truetype && rm -rf *

然后把准备好的字体拷贝到这里

具体操作如下

docker cp winfont.zip test1:/root 把字体拷贝到容器里面

docker exec -it test1 bash

然后unzip winfont.zip

然后 cd winfont && mv * /usr/share/fonts/truetype/

然后在容器里面执行下面命令进行字体初始化:

mkfontscale

mkfontdir

fc-cache -fv

退出容器

docker exec test1 /usr/bin/documentserver-generate-allfonts.sh

这样就可以onlyoffice 界面看到自己的字体了。

!!!onlyoffice5.x以前默认不支持中文,5.x以后默认支持的,所以下载镜像的时候下载5版本以后的。

以上是关于ONLYOFFICE 安装对接指南的主要内容,如果未能解决你的问题,请参考以下文章

seafile和onlyoffice的https对接并在线访问编辑

OnlyOffice源码编译arm架构指南

onlyOffice安装与使用

onlyoffice

Docker安装实践(超简单) +安装OnlyOffice

Linux(centos)离线安装OnlyOffice