当前位置: 首页 > news >正文

基于docker的onlyoffice使用--运行JavaSpringExample

背景

        我之前看到有开源项目很好地集成了onlyoffice,效果要比kkfilepreview好(应当说应用场景不太一样)。本文是在window10环境,安装完Docker Desktop的基础上运行onlyoffice,并利用官网JavaSpringExample进行了集成。

步骤

        基本思路:从源码来看,Example的相关请求需走Docker OnlyOffice的方法,包括上传与下载,因此,我在配置文件中将文件直接上传至onlyOffice的对应目录。

(一)Docker部分

1、docker中下载最新的onlyoffice镜像,需搭配梯子,大小在3.25GB。

2、运行容器,我同时配置了JWT_SECRET及WOPI_ENABLED,输入以下命令。

docker run -i -t -d -p 80:80 --name onlyoffice --restart=always -v F:/app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data -v F:/app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice -e WOPI_ENABLED=true -e JWT_SECRET=SOIIC_JWT_SECRET onlyoffice/documentserver

同时进行映射,文件映射目录的步骤非常重要,默认使用了80端口,本文将映射目录放置于F盘。

 然后运行example案例,命令如下:

docker exec (容器ID) sudo supervisorctl start ds:example

 Docker中 onlyoffice的example演示:

(二)Example部分

3、下载JavaSpringExample,并在IDEA中打开。

下载地址包含Java、JavaSpring、.NET、PHP等案例

本文以JavaSpringExample为例。

 4、进行文件配置

本文直接给出配置文件,如下(如安装本文运行有问题可留言评论):

server.version=1.7.0##server.address可填本机IP地址
server.address=
##server.port案例端口
server.port=8080filesize-max=5242880##files.storage,Docker中onlyOffice的example的地址;
# 最后IP可用容器中example(80端口)上传文件测试后得出,自动生成目录
files.storage=F:\\app\\onlyoffice\\DocumentServer\\lib\\documentserver-example\\files\\172.17.0.1
##files.storage.folder见源码LocalFileStorage中getStorageLocation方法,当files.storage为绝对路径时未用到本配置
files.storage.folder=filesfiles.docservice.fillforms-docs=.docx|.oform
files.docservice.viewed-docs=.djvu|.oxps|.pdf|.xps
files.docservice.edited-docs=.csv|.docm|.docx|.docxf|.dotm|.dotx|.epub|.fb2|.html|.odp|.ods|.odt|.otp|.ots|.ott|.potm|.potx|.ppsm|.ppsx|.pptm|.pptx|.rtf|.txt|.xlsm|.xlsx|.xltm|.xltx
files.docservice.convert-docs=.doc|.dot|.dps|.dpt|.epub|.et|.ett|.fb2|.fodp|.fods|.fodt|.htm|.html|.mht|.mhtml|.odp|.ods|.odt|.otp|.ots|.ott|.pot|.pps|.ppt|.rtf|.stw|.sxc|.sxi|.sxw|.wps|.wpt|.xls|.xlsb|.xlt|.xml
files.docservice.timeout=120000
files.docservice.history.postfix=-hist##files.docservice.url.site为服务器IP地址+端口,本文80端口省略不写
files.docservice.url.site=http://192.168.52.31
files.docservice.url.converter=/ConvertService.ashx
files.docservice.url.command=/coauthoring/CommandService.ashx
files.docservice.url.api=/web-apps/apps/api/documents/api.js
files.docservice.url.preloader=/web-apps/apps/api/documents/cache-scripts.html
##files.docservice.url.example为文件服务器example访问地址
files.docservice.url.example=http://192.168.52.31/example##files.docservice.secret为Docker运行容器时指定的secret。
files.docservice.secret=SOIIC_JWT_SECRET
files.docservice.header=Authorization
files.docservice.token-use-for-request=truefiles.docservice.verify-peer-off=truefiles.docservice.languages=zh:Chinese (Simplified)|en:English|hy:Armenian|az:Azerbaijani|eu:Basque|be:Belarusian|bg:Bulgarian|ca:Catalan|zh-TW:Chinese (Traditional)|cs:Czech|da:Danish|nl:Dutch|fi:Finnish|fr:French|gl:Galego|de:German|el:Greek|hu:Hungarian|id:Indonesian|it:Italian|ja:Japanese|ko:Korean|lo:Lao|lv:Latvian|ms:Malay (Malaysia)|no:Norwegian|pl:Polish|pt:Portuguese (Brazil)|pt-PT:Portuguese (Portugal)|ro:Romanian|ru:Russian|si:Sinhala (Sri Lanka)|sk:Slovak|sl:Slovenian|es:Spanish|sv:Swedish|tr:Turkish|uk:Ukrainian|vi:Vietnamese|aa-AA:Test Languagespring.datasource.url=jdbc:h2:mem:usersdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=password
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
hibernate.ddl-auto
spring.h2.console.enabled=true
spring.h2.console.path=/h2
spring.servlet.multipart.max-file-size=5MB
spring.servlet.multipart.max-request-size=5MBurl.index=/
url.converter=/converter
url.editor=/editor
url.track=/track
url.download=/downloadlogo.image=
logo.imageEmbedded=
logo.url=https://www.onlyoffice.com

 演示效果

 本地JavaSpringExample的演示效果:

http://www.lryc.cn/news/248626.html

相关文章:

  • SQL server-excel数据追加到表
  • 深度学习-模型调试经验总结
  • Redis打包事务,分批提交
  • 深度学习毕设项目 深度学习 python opencv 动物识别与检测
  • leetcode 611. 有效三角形的个数(优质解法)
  • Ubuntu使用Nginx部署前端项目——记录
  • 小航助学题库蓝桥杯题库c++选拔赛(22年1月)(含题库教师学生账号)
  • centos用户相关命令
  • 智能优化算法应用:基于哈里斯鹰算法无线传感器网络(WSN)覆盖优化 - 附代码
  • Stability AI 新发布SDXL Turbo:一款实时文本到图像生成模型
  • 基于Java SSM框架+Vue实现病人跟踪治疗信息系统项目【项目源码+论文说明】
  • js一行压缩库
  • 管理库存和出货的软件
  • 保护关键信息基础设施网络安全,SSL证书来助力
  • Python实现学生信息管理系统(详解版)
  • 企业计算机服务器中了mallox勒索病毒如何解密,mallox勒索病毒文件恢复
  • Linux学习笔记 CenOS6.3 yum No package xxx available
  • 【探索Linux】—— 强大的命令行工具 P.18(进程信号 —— 信号捕捉 | 信号处理 | sigaction() )
  • vue3+ts v-model 深度学习
  • 网络通信概述
  • <avue-crud/>,二级表头,children下字典项的dicUrl失效问题
  • FastApi接收不到Apifox发送的from-data字符串_解决方法
  • Python高级数据结构——堆(Heap)
  • linux 讨论题合集(个人复习)
  • 浅析SD-WAN技术如何加强企业网络安全
  • 测试相关-面试高频
  • 基于Java web的多功能游戏大厅系统的开发与实现
  • 【MySQL工具】my2sql-快速解析binlog
  • vueRouter常用属性
  • Qt5.15.2的镜像网址