使用docker部署onlyoffice插件步骤及踩坑问题(win10/linux)

这篇具有很好参考价值的文章主要介绍了使用docker部署onlyoffice插件步骤及踩坑问题(win10/linux)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、引言

最近公司系统插件从金格换成了OnlyOffice,需要重新安装部署,做个记录。

安装onlyoffice有两种方式,第一种是独立安装nginx、epel、PostgreSQL、RabbitMQ等依赖项,再安装OnlyOffice文档插件。此种方式较为繁琐,暂不赘述,附同事分享的文档在资源内。

第二种为docker安装部署,省心方便,操作快捷。(注:部署docker需要重启计算机或服务器,谨慎选择
这里对第二种方式进行介绍。

最开始尝试在应用服务器:Windows Server2019上安装,由于安装环境较为复杂,为三层嵌套虚拟机,且客户不愿为该虚拟机开启嵌套虚拟化,Docker Desktop无法顺利启动,故放弃。
最后在win10和Anolis Os8.6QU1(Linux)系统中安装部署成功。

注:必须保证应用所在服务器和onlyoffice插件所在服务器的网络互相能够ping通。

二、Win10安装

  1. 获取Docker Desktop Installer.exe。

    下载地址:

    点击直接下载 Docker Desktop
    Installer.exe,下载后安全扫描

  2. 双击运行,安装docker,略慢,需等待一会儿。完成后关闭安装界面,打开docker。不登录,直接进入。

    部署onlyoffice,docker,linux,容器

  3. 修改存储路径。

    部署onlyoffice,docker,linux,容器

  4. 打开命令提示符,输入docker,查看是否安装成功。

    部署onlyoffice,docker,linux,容器

  5. 在命令提示符内使用docker拉取OnlyOffice镜像(7.2版本之前的),等待下载完成。

    docker pull onlyoffice/documentserver:7.1.1
    

    部署onlyoffice,docker,linux,容器

  6. 进入docker,查看镜像。

    部署onlyoffice,docker,linux,容器

  7. 启动OnlyOffice镜像,配置80端口的映射端口及文件夹路径。这里映射端口设置为了9696,可根据实际情况配置。

    部署onlyoffice,docker,linux,容器
    部署onlyoffice,docker,linux,容器

    host路径 容器路径
    /app/onlyoffice/DocumentServer/logs /var/log/onlyoffice
    /app/onlyoffice/DocumentServer/sdkjs-plugins /var/www/onlyoffice/documentserver/sdkjs-plugins/plugin
    /app/onlyoffice/DocumentServer/data /var/www/onlyoffice/Data

    查看容器,圈出部分为容器id。

    部署onlyoffice,docker,linux,容器

  8. 安装测试实例(如有需要):

    docker exec 容器id(替换成自己的) sudo supervisorctl start ds:example
    

    部署onlyoffice,docker,linux,容器

  9. 根据自己的应用服务配置接口。笔者所用应用需配置.properties文件。

    部署onlyoffice,docker,linux,容器

  10. 使用互通网络的服务器访问插件所在服务器ip:端口/,查看是否启动成功。

    部署onlyoffice,docker,linux,容器

    查看样例是否可以正常使用。

    部署onlyoffice,docker,linux,容器
    部署onlyoffice,docker,linux,容器
    部署onlyoffice,docker,linux,容器

  11. 从应用跳转。
    部署onlyoffice,docker,linux,容器

三、Anolis Os8.6QU1安装(CentOS可用)

  1. 直接拉取Docker。

    yum -y install docker
    
  2. 启动docker

     service docker start
    
  3. 查看docker启动状态

    service docker status
    

    如图所示状态,表示启动成功。

    部署onlyoffice,docker,linux,容器

  4. 拉取OnlyOffice镜像(7.2版本之前的),等待下载完成。

    docker pull onlyoffice/documentserver:7.1.1
    
  5. 启动容器,配置映射端口及路径(同windows)

    sudo docker run -i -t -d -p 9696:80 --privileged=true \
    -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
    -v /app/onlyoffice/DocumentServer/sdkjs-	plugins:/var/www/onlyoffice/documentserver/sdkjs-plugins/plugin \
    -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver:7.1.1
    
  6. 查看正在运行的docker容器。

    docker ps -a
    

    部署onlyoffice,docker,linux,容器

  7. 安装测试实例、测试运行等步骤同win10。

四、常用docker命令

进入容器查看OnlyOffice日志:

sudo docker exec -it onlyoffice /bin/bash
tail -f /var/log/onlyoffice/documentserver/docservice/out.log

五、遇到的问题及解决方法

  1. OnlyOffice打开文档,显示文档安全令牌未正确形成。
    原因:
    OnlyOffice从7.2版本开始,默认情况下启用了JWT,相当于加了个密钥,客户端和服务器同一个密钥才能使用。
    解决方法:
    工作时间紧迫,学习了修改密钥的方法后,重新启动容器又变回去了,加之笔者工作对于OnlyOffice的版本没有严格要求,故直接下载了7.2前的版本。

  2. OnlyOffice提示下载失败
    原因一:
    docker node js无法对客户端自签名证书进行认证。
    解决方法:
    进入onlyoffice容器并修改onlyoffice的default.json文件:
    路径:/etc/onlyoffice/documentserver/default.json
    查找“rejectUnauthorized"设置项,并将其值更改为“false”。

     "requestDefaults": {
                                "headers": {
                                        "User-Agent": "Node.js/6.13"
                                },
                                "rejectUnauthorized": false
                        },
    

    原因二:
    应用服务器与插件所在服务器网络不通。
    解决方法:
    检查网络。根据具体情况配置,看两台服务器的防火墙端口是否关闭、是否允许其他计算机ping等问题。

    原因三:
    无法解析127.0.0.1。
    解决方法一:
    不使用127.0.0.1或localhost,使用应用服务器ip登录跳转。
    解决方法二:(注:笔者未使用过,慎重实验
    进入容器内部,编辑local.json文件。

    vim /etc/onlyoffice/documentserver/local.json
    

    在配置文件中,找到storage部分,并将upload和conversion的url改为宿主机的IP地址。例如,假设宿主机IP地址是192.168.1.100,则修改配置如下:

    "storage": {
        "upload": {
            "url": "192.168.1.100"
            "path": "/var/www/onlyoffice/Data/Documents/files/"
        },
        "conversion": {
            "url": "192.168.1.100"
        }
    }
    

    重启容器。

  3. OnlyOffice提示:这份文件无法保存。请检查连接设置或联系您的管理员当你点击“OK“按钮,系统将提示您下载文档。
    原因:
    onlyoffice docker容器内部访问不了应用服务器上文档的域名 (域名是内网dns解析的,非公网),缺少dns解析,所以onlyoffice跟调用系统无法通信。
    测试方法:在容器中 curl 文档系统的地址。
    例:

    docker exec -it office /bin/bash
    curl file.com:8888
    

    如果没有正常返回,说明该域名在容器里访问不了。
    解决方法:
    不使用127.0.0.1或localhost,使用应用服务器ip登录跳转。

六、参考文档

onlyoffice 安装、测试、打包、部署

安装 onlyoffice

Anolis OS 7.9安装docker

anolis8.6 安装docker

(原创)Onlyoffice docs docker实例安装示例后,打开文档提示:文档下载失败

dzzoffice,onlyoffice文档加载中下载失败

解决O2OA自签名证书后onlyoffice无法预览及保存文件问题

docker中的onlyoffice 打开时提示下载失败

onlyoffice报 error self signed certificate导致download failed错误处理

dzzoffice中安装onlyoffice后打开显示文档安全令牌未正确形成的临时解决办法文章来源地址https://www.toymoban.com/news/detail-754222.html

到了这里,关于使用docker部署onlyoffice插件步骤及踩坑问题(win10/linux)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【其他】Windows10下docker安装指南及踩坑解决

    1.官网下载docker文件( 注意:Windows10家庭版要自己安装hyper-v,专业版以上自带) 顺利启动docker界面 虚拟化技术没打开,需要打开虚拟化hyper 解决:打开设置下的控制面板-程序和功能-启用和关闭windows功能-勾选打开hyper-v 备注:如遇hyper-v平台置灰无法打开,需要开启bios中的虚拟

    2024年02月06日
    浏览(30)
  • 宝塔安装ssl证书步骤及踩坑,此网站无法提供安全连接,无法打开宝塔面板,rm -f ssl.pl

    在访问宝塔面板时出现不安全链接,所有决定安装ssl证书,但在网上执行以下命令( 终端执行命令rm -f /www/server/panel/data/ssl.pl /etc/init.d/bt restart )后无法访问宝塔面板,显示此网站无法提供安全连接。 解决方案: /www/server/panel/data/ 目录下创建文件ssl.pl文件,文件内容为True

    2024年02月09日
    浏览(32)
  • Flask结合gunicorn和nginx反向代理的生产环境部署及踩坑记录

    个人博客:https://xzajyjs.cn 之前自己写的flask使用gunicorn上线生产环境没有什么问题,但是最近搭建了一个现成的flask项目,当使用python直接运行时不会有问题,而使用gunicorn时则会出现一些问题。 这里使用pyenv创建了一个虚拟环境,并安装好依赖 下面是入口函数 run.py : 其中

    2024年02月16日
    浏览(20)
  • Spring Cloud OpenFeign 的使用及踩坑指南

    Feign 和OpenFeign Feign OpenFeign openFeign的优势 OpenFeign应用 1. 导入依赖 2. 使用 3. 日志配置 4. 数据压缩 OpenFeign高级应用 OpenFeign熔断降级的两种方式-降级方法和降级工厂 踩坑指南 坑一:Http Client 坑二:全局超时时间 坑三:单服务设置超时时间 遇到的问题 1. 使用Spring MVC注解,但请

    2024年02月14日
    浏览(25)
  • 【Rust】Iced GUI库初使用及踩坑——写一个计数器

    从5月份起,我一直在寻找一个可用的,稳定的,开发者友好的Rust GUI框架,试图做到All in Rust,即一切的一切都可以靠Rust实现,其中GUI是相当重要的一部分,但找了许久,大部分给我答案是使用 tauri ,可我不是一个前端程序员,也没有深入学习前端的想法,故寻找计划只好搁

    2024年02月16日
    浏览(24)
  • 【微服务部署】三、Jenkins+Maven插件Jib一键打包部署SpringBoot应用Docker镜像步骤详解

      前面我们介绍了K8S+Docker+Maven插件打包部署SpringCloud微服务项目,在实际应用过程中,很多项目没有用到K8S和微服务,但是用到了Docker和SpringBoot,所以,我们这边介绍,如果使用Jenkins+jib-maven-plugin插件打包部署SpringBoot项目的Docker镜像。   网上有多种Docker打包插件使用说

    2024年02月09日
    浏览(18)
  • Docker无法部署Onlyoffice问题记录

    国产操作系统(麒麟v10-x86-64bit,openEuler20.03 64bit x86),安装docker之后,通过docker run之后Onlyoffice无法成功跑起来,且会消耗大量cpu资源,甚至导致系统卡死 镜像的entrypoint中指向运行一个sh脚本,脚本中通过service命令启动rabbitmq,但是一直无法成功启动,且一直处于循环尝试导

    2024年01月18日
    浏览(23)
  • linux onlyOffice docker 离线部署

    docker 离线安装onlyoffice,如在线安装可直接跳过导出导入镜像步骤,拉取后直接运行。 下载文件 wget https://download.docker.com/linux/static/stable/x86_64/docker-19.03.9.tgz 解压 把压缩文件存在指定目录下,并进行解压 将解压出来的docker文件内容移动到 /usr/bin/ 目录下 4、将docker注册为serv

    2024年02月13日
    浏览(19)
  • Docker部署onlyoffice,解决https访问

    首先,启动onlyoffice的Docker镜像,本文章采用的2023年11月初的官方镜像,具体版本号未查到。当时国内的镜像源只能下载到旧版本的,需要将/etc/docker/daemon.json设置\\\"dns\\\" : [ \\\"8.8.8.8\\\" ]方能下载。 先用docker exec进入启动的onlyoffice镜像,仿照如下帖子创建签名 CentOS7自签名SSL证书并给

    2024年04月14日
    浏览(16)
  • Centos 7 通过Docker部署OnlyOffice

      在有些集成网站中,是不支持JWT,如果下载默认启用JWT的版本,然后禁用JWT的话,在局域网中通过私有IP访问时就会出现问题,以下会介绍未默认启用JWT版本的部署方法。 请参考另一篇文章: Docker CE 安装 1、从Docker镜像仓库中下载(拉取)OnlyOffice镜像到本地计算机 2、在

    2024年02月10日
    浏览(18)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包