Docker版Dzzoffice安装教程

背景

初期我是用的window直接安装的dzzoffice,不过很可惜不好迁移,一旦有机器迁移,同样的过程要做很多遍,各种配置环境其实都是没有必要的反复工作,基于以上情况,特此为了转成docker版并且把这个过程做一个记录,分享出来…

Windows Docker版教程

机器环境

系统:windows 10 企业版
工具:dockerToolbox

docker 配置

前置知识补充

docker工具知识补充

在开始之前,提供一些文章,方便对docker了解不多的同学可以更方便的使用
dockerToolbox和docker for windows的区别
了解了区别,我们来了解下安装教程,笔者选择了dockerToolbox是由于这个出的相对比较早,在国内的环境之下,这个相关的踩坑以及文档更便于查看,同时请大家注意 hyper -v是很多的手机虚拟机冲突,所以大家可以根据情况选择一下
dockerToolbox安装教程

docker-compose 工具知识补充

Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。

Docker-Compose将所管理的容器分为三层,分别是工程(project),服务(service)以及容器(container)。Docker-Compose运行目录下的所有文件(docker-compose.yml,extends文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为当前目录名。一个工程当中可包含多个服务,每个服务中定义了容器运行的镜像,参数,依赖。一个服务当中可包括多个容器实例,Docker-Compose并没有解决负载均衡的问题,因此需要借助其它工具实现服务发现及负载均衡。

注意,windows版本的docker-compose是自带的,不需要额外安装,这里是给大家一个前置印象

docker & docker 命令

提供给大家一些素材,方便大家了解,本文用到的 docker与docker-compose命令

构建dockerfile命令

docker build -t kooteam:1.0 .
注意构建是 工程名:版本号 外加一个 “ . ”,控制台一定要进入到dockerfile所在的目录

构建docker-compose命令

docker-compose up -d # 在后台启动服务

docker-compose ps # 查看启动的服务

docker-compose stop #停止服务

docker命令学习了解
docker-compose 命令了解

安装开始

dzzoffice官方github方便查看最新版本,大家可以根据版本自行构建想要的版本的docker image

首先笔者使用的笔者用的是v2.0.2,参考的dockerfile是这个人做的
dockerfile,大家可以自行更换下文中的版本号,利用

FROM php:7.3.8-apache-stretch

ENV VERSION 2.02

RUN apt-get update && apt-get install -y libzip-dev libfreetype6-dev \
  && docker-php-ext-install mysqli \
  && docker-php-ext-install gd \
  && docker-php-ext-install zip

RUN curl -o /tmp/dzzoffice-${VERSION}.tar.gz https://codeload.github.com/zyx0814/dzzoffice/tar.gz/${VERSION} \
  && tar -xzvf /tmp/dzzoffice-${VERSION}.tar.gz -C /tmp \
  && rm -rf /tmp/dzzoffice-${VERSION}.tar.gz /tmp/dzzoffice-${VERSION}/*.md \
  && mv /tmp/dzzoffice-${VERSION}/* /var/www/html/

RUN chown -R www-data:www-data /var/www/html/

如果不想自行制作的同学也可以直接利用现成的,不过速度会慢很多,因为很多的个人的dockerfile image是不会被阿里收录的。
接下来是正式的构建,命令进入有docker-compose.yml(拷贝到想要构建的目录里面)的文件夹
Docker版Dzzoffice安装教程_第1张图片
Docker版Dzzoffice安装教程_第2张图片
利用

docker-compose up -d

即可实现基本的构建,不过直接利用个人的dockerfile构建笔者测试感觉是比较慢的,所以笔者就在他人的基础上,对docker-compose.yml进行了小小的改造:

version: "2.2"
networks:
  internal_network:
services:
  mysql:
    restart: always
    networks:
      - internal_network
    #network_mode: bridge
    image: mysql:5.7.27
    environment:
      - MYSQL_ROOT_PASSWORD=gmtools
    volumes:
      - /e/dockerspace/dzzoffice/mysql:/var/lib/mysql
    expose:
      - "3306"
    ports:
      - "3307:3306"
  phpmyadmin:
    restart: always
    #network_mode: bridge
    image: phpmyadmin/phpmyadmin:4.7.9-1
    links:
      - "mysql"
    environment:
      - PMA_HOST=mysql
    volumes:
    # 替换为自己想要的目录
      - /e/dockerspace/dzzoffice/mysql:/var/lib/mysql
    expose:
      - "80"
    ports:
      - "1801:80"
  dzzoffice:
    restart: always
    networks:
      - internal_network
    #network_mode: bridge
    # 替换为你自己好的image名字
    image: registry.cn-hangzhou.aliyuncs.com/blackjuly/work:1.0 #land007/dzzoffice:latest
    volumes:
    # 替换为自己想要的目录
      - /e/dockerspace/dzzoffice/html:/var/www/html/
    links:
      - "mysql"
    expose:
      - "80"
    ports:
      - "1800:80"
  onlyoffice:
  	#此处笔者直接替换成了官方的onlyoffice
    image: onlyoffice/documentserver:latest
    restart: always
    networks:
      - internal_network
    #network_mode: bridge
    expose:
      - "80"
    ports:
      - "8000:80"
  # collabora: 由于作者用不到这个,就直接关闭掉了
  #   image: collabora/code:latest
  #   restart: always
  #   networks:
  #     - internal_network
  #   #network_mode: bridge
  #   expose:
  #     - "9980"
  #   ports:
  #     - "9980:9980"
  #   environment:
  #     - username=admin
  #     - password=S3cRet

#http://192.168.1.218:8000/web-apps/apps/api/documents/api.js

#unset ${!DOCKER_*}
#sudo docker-compose up -d
#sudo docker-compose down

注意事项:

docker目录映射到其他盘符

为了保护C盘容量,可以考虑映射到别的盘符
docker目录映射到其他盘符

onlyoffice使用注意事项

chrome和opera浏览器中输入中文,键入符号的时候,前面的中文会重复输入进去。

浏览器访问不能以localhost,127.0.0.1来直接访问,需要输入你完整的地址(例如:192.168.0.xx:8090/…),不然无法打开在线编辑功能

目前只有最新版本的Chrome,Firefox,Safari或Internet Explorer网络浏览器支持文档编辑器(IE9以前的都不支持onlyoffice的文档编辑器)

历史版本功能目前是只支持word的历史版本,PowerPoint和Excel不支持历史版本,并且历史版本只能看,不能再次编辑

后记

觉得笔者写的还可以的,欢迎看一下我的博客

你可能感兴趣的:(工具搭建,docker)