一:liunx环境部署onlyOffice

 一、描述:

        本文章通过docker在liunx环境下部署onlyOffice及依赖插件,部署的是7.1版本的onlyOffice,7.2及以上版本增加了jwt密钥验证比较麻烦(我没弄成功。。。)。

二、部署步骤:

1、通过docker拉去only Office镜像(可以在hub.docker.com公网查看拉去命令):
        docker pull onlyoffice/documentserver:7.1

2、通过docker拉取postgresql镜像(注意:必须9.6版本,高版本的密码验证策略不一样onlyOffice不支持):
        docker pull postgres:9.6

3、制作postgresql镜像容器(建立用户:postgres,密码:123456,库名:postgres的数据库用户):

docker run --name postgres -e POSTGRES_PASSWORD=123456 -p 5432:5432 -v /home/postgresql/pgdata:/var/lib/postgresql/data -d postgres:9.6

4、制作only Office镜像容器(默认是80端口,这里映射成9050端口,可以按自己的改):

sudo docker run -i -t -d -p 9050:80 \
    -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice  \
    -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data  onlyoffice/documentserver:7.1

 5、查看docker容器(可查看到postgresql和onlyOffice都已启动):

docker ps -a

 6、通过Navicat工具在postgresql数据库增加onlyoffice用户及库(也可通过命令,但我不会),如下图:

    先增加用户:用户名及密码都是:onlyoffice

一:liunx环境部署onlyOffice_第1张图片

       再增加库:onlyoffice

一:liunx环境部署onlyOffice_第2张图片

7、在新增加的onlyoffice库里执行初始化sql(这个必须执行,不然集成到系统里时会一直显示:加载中。。。):

8、修改onlyOffice配置文件local.json:

先用命令将配置文件下载下来(因为不能docker里不能直接编辑):我下载到/usr/tmp/目录了.

docker cp 容器ID:/etc/onlyoffice/documentserver/local.json /usr/tmp/

 修改配置文件local.json:按照postgresql数据库连接信息进行修改,注意dbHost要用服务器实际IP。如果不改在页面加载word或者excel文档时会一直显示加载中。

一:liunx环境部署onlyOffice_第3张图片

注意:如果用mysql数据库的话按照以下进行操作:

1、mysql的配置文件my.ini:(mysql8.0及以上版本需要此操作)
authentication_policy=caching_sha2_password
修改为:
authentication_policy=*

2、执行语句:(mysql8.0及以上版本需要此操作)
ALTER USER '用户'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

3、onlyOffice的local.json配置文件,按如下改:
"services": {
    "CoAuthoring": {
      "sql": {
        "type": "mysql",
        "dbHost": "192.168.187.1",
        "dbPort": "3306",
        "dbName": "vent",
        "dbUser": "root",
        "dbPass": "RSKerDOY+2G+wjNc4wU6"
      },

将修改后的local.json上传到docker:

docker cp /usr/tmp/local.json 容器ID:/etc/onlyoffice/documentserver

重启 onlyOffice服务(注意:一定不要重启docker容器,不然会重置掉配置文件):

docker exec -it 容器ID /bin/bash -c "supervisorctl restart all"

9、 访问网址验证是否成功(验证ok后onlyOffice的部署算完了):

http://onlyOffice服务器IP:9050/welcome/

一:liunx环境部署onlyOffice_第4张图片

验证集成到系统里时需要引用到页面的api:

 http://onlyOffice服务器IP:9050/web-apps/apps/api/documents/api.js

 三、参考命令:

1、启动docker:
sudo systemctl start docker

2、查看容器列表(结果可查看到容器ID):
docker ps -a

3、进入容器:
sudo docker exec -i -t 容器ID /bin/bash

4、onlyOffice配置文件地址:
cd /etc/onlyoffice/documentserver

5、从docker下载配置文件进行修改:
docker cp 容器ID:/etc/onlyoffice/documentserver/local.json /usr/tmp/

6、本地修改配置后上传到docker:

docker cp /usr/tmp/local.json 容器ID:/etc/onlyoffice/documentserver/

7、重启docker下某个服务(修改配置文件后重启服务):

docker exec -it 容器ID /bin/bash -c "supervisorctl restart all"

8、启动容器:(停止:stop,重启:restart)
docker start 容器ID

9、查看镜像列表(结果可获取到镜像ID)

docker image ls

10、删除镜像:
docker rmi 镜像ID

或者

docker image rm 镜像ID

你可能感兴趣的:(docker,容器,运维,java)