1、onlyoffice简介
ONLYOFFICE是一套开源的在线办公协作平台,主要提供在线文档编辑(Word/Excel/PPT)+ 协同办公能力。它常被用于替代传统 Office,在企业内部系统(如 OA、文档管理系统、网盘等)中实现浏览器在线编辑文档。2、启动onlyoffice
2.1 docker run的方式启动
前提:Linux服务器上已经安装好docker服务。docker run -d -p 8088:80 \--name onlyoffice \-e JWT_ENABLED=false \-e WOPI_ENABLED=false \--restart=always \-v /opt/docker_mount/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \-v /opt/docker_mount/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \-v /opt/docker_mount/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \-v onlyoffice_config:/etc/onlyoffice/documentserver \onlyoffice/documentserver:7.5
-e JWT_ENABLED=false作用是关闭 JWT token 校验,在ONLYOFFICE Document Server 中,JWT用于校验调用来源,防止非法访问,开发阶段通常关闭,生成环境建议开启。
-e WOPI_ENABLED=false关闭 WOPI协议,WOPI 是微软的在线编辑协议。OnlyOffice支持两种集成方式:(1)API模式(2)WOPI模式
几个挂载说明:(1)-v /opt/docker_mount/onlyoffice/DocumentServer/logs:/var/log/onlyoffice把容器中的日志挂载出来,便于排查问题(2)-v /opt/docker_mount/onlyoffice/DocumentServer/data:/var/www/onlyoffice/DataDocumentServer公共数据目录,例如自定义字体,安装插件等(3)-v /opt/docker_mount/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice这个是最重要的目录之一,在 ONLYOFFICE Document Server 中 /var/lib/onlyoffice存储编辑缓存转换文件协同编辑状态临时文件(4)-v onlyoffice_config:/etc/onlyoffice/documentserver (这个是卷挂载)把容器中的相关配置挂载出来便于修改
启动之后访问onlyoffice提供的页面,如下:如果此时点击 GO TO TEST EXAMPLE 会报如下错误这是因为测试服务没有启动,上图中给我们提供了启动命令,分别在服务器上执行如下两条命令(注意:容器id修改成自己的启动的服务id):启动测试服务:sudo docker exec bc1d4412821d sudo supervisorctl start ds:example设置测试服务自动启动sudo docker exec bc1d4412821d sudo sed 's,autostart=false,autostart=true,' -i /etc/supervisor/conf.d/ds-example.conf
此时还需要修改如下配置文件并重启onlyoffice服务:/var/lib/docker/volumes/onlyoffice_config/_data/default.json
2.2 docker-compose的方式启动
生产环境通常使用docker-compose的方式进行启动服务,把上述的docker run方式的命令转换成如下的docker-compose命令(docker-compose-onlyoffice.yaml):注意:上面启动的onlyoffice服务已经占用了宿主机的8088端口,现在通过docker-compose方式启动时使用8089端口,容器名称也换成onlyoffice_v2name: onlyofficeservices: onlyoffice: image: onlyoffice/documentserver:7.5 container_name: onlyoffice_v2 ports: - "8089:80" environment: - JWT_ENABLED=false - WOPI_ENABLED=false volumes: - /opt/docker_mount/onlyoffice/DocumentServer/logs:/var/log/onlyoffice - /opt/docker_mount/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data - /opt/docker_mount/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice - onlyoffice_config:/etc/onlyoffice/documentserver restart: alwaysvolumes: onlyoffice_config: external: true
进入到docker-compose-onlyoffice.yaml 文件所在目录下,执行如下命令启动onlyoffice服务:3. SpringBoot项目集成onlyoffice请参考链接https://gitee.com/sun_hongguang/exame_system_server_before/请看 <_07_onlyoffice_part> 这个Module下的代码注意:resources/static/test.html这个文件里面的两个ip地址要修改成你自己的,然后浏览器访问http://你的本地ip:端口/test.html