• onlyoffice document docker版安装使用总结


    注意:本文的例子是在windows2019下操作的,并经过确认。

    docker的安装

    1 安装docker,首先开启硬件bios虚拟项,安装hy wsl(windows子系统)。
    2 安装docker desktop
    3 docker desktop 容器引擎选择linux。

    容器镜像的安装

    1 portainerUI 的安装 ,使用portainer来管理容器

    docker run -d --name portainerUI -p 9090:9000  --restart=always -v \.pipedocker_engine:\.pipedocker_engine portainer/portainer 
    docker run -d --name portainerUI -p 9090:9000 -v "/var/run/docker.sock:/var/run/docker.sock"  portainer/portainer #linux系统
    

    2 创建网络

    在portainerUI中,创建名为mynet的网络,类型为bridge。网关为 172.20.10.11 ,子网掩码 172.20.0.0/16 ,范围内172.20.10.28/25 。
    具体可根据实际情况设置。

    3 安装redis redis的服务器地址为172.20.10.9 ,也可以根据容器名访问。 ping 容器名和ip试试。

    docker run --name some-redis --restart=always --net mynet --ip 172.20.10.9   -d redis 
    

    4 安装rabbitmq 地址为172.20.10.8

    docker run --name some-rabbitmq --restart=always --net mynet --ip 172.20.10.8     -d rabbitmq 
    

    5 安装postgresql 地址为172.20.10.1

    docker run --name some-postgres --restart=always -p 5432:5432 --net mynet --ip 172.20.10.1     -e POSTGRES_PASSWORD=mypassword -d postgres
    

    登录数据库

    CREATE DATABASE onlyoffice #创建数据库
    CREATE USER onlyoffice WITH password 'onlyoffice' #创建账号
    GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice #设置账号和数据库的关联权限
    

    6 安装 onlyoffice 选择合适的镜像 alehoho/oo-ce-docker-license

    docker run  --name=onlyoffice  --restart=always  --detach --publish=8033:80 --net mynet --ip 172.20.10.5 -e LANGUAGE=zh_CN:zh -e JWT_ENABLED=true -e JWT_IN_BODY=true -e JWT_SECRET=secret -e DB_TYPE=postgres -e DB_HOST=172.20.10.1 -e DB_PORT=5432 -e DB_NAME=onlyoffice -e DB_USER=onlyoffice  -e DB_PWD=onlyoffice -e AMQP_URI=amqp://guest:guest@172.20.10.8:5672 -e REDIS_SERVER_HOST=172.20.10.9 -e REDIS_SERVER_PORT=6379  alehoho/oo-ce-docker-license
    

    特别要注意的是:-e JWT_SECRET=secret 这个是秘钥,不要暴露给别人知道。 变量的配置文件在容器中的位置/etc/onlyoffice/documentserver/local.json
    这个秘钥的值,要和实例代码配置中的值对应。 如果不设置jwt的验证功能(环境变量 JWT_ENABLED JWT_IN_BODY JWT_SECRET 都不设,且代码settings.config文件中的files.docservice.secret为空)则不进行身份验证

    7 c#的实例代码 https://files.cnblogs.com/files/wang2650/onlyofficeNet.zip 。其他语言的可以去官网去找。
    需要注意的是,实例(包括官网2020年12月的例子),都有个问题:在文档编辑页面,点击文件-版本历史 的时候,会报错。网上的文章说要在代码的gethistrory中加token ,还要加跨域。最后我也没试成功,参考文章 https://segmentfault.com/a/1190000038221508
    版本历史的那个功能,直接隐藏。 有知道的,可以告诉我下,留言私信都可以,谢谢。

  • 相关阅读:
    thrift ssl 证书整理
    snmp学习笔记
    你必须了解的Session的本质
    安装大文件提示错误
    说说大型高并发高负载网站的系统架构(更新)
    【错误】未能找到类型或命名空间名称XXXX和未能解析引用的程序
    js调用后台代码的几种方式
    HTTP 错误 401.1
    万能的编程语言不要习惯性地把工具当作你天性缺陷的遮羞布
    PostgreSQL与MySQL比较
  • 原文地址:https://www.cnblogs.com/wang2650/p/14281950.html
Copyright © 2020-2023  润新知