一、一些背景

之前研究Docker很久了,并且在公司内部实际使用起来了,目前分两种场景使用Docker

1、作为PAAS,提供一致,统一的编译/测试环境;

2、作为虚拟机,直接分配给新来的开发人员使用。

使用Docker一段时间之后,准备在公司内部使用Docker + Hadoop(HDFS)组件内部一个私有云,统一管理公司和产品/项目组内部的代码、文档。

我选择先从文档管理开始,在底层架子搭建好之后,需要给内部人员提供一个好的“门面”,在没有这个门面之前,我们大量使用SSH+Command方式操作,对于爱捣鼓的程序员,这种方式高效方便,但对于公司内部非RD部门的人员,就不能给出这种使用方式,他们不会使用这么晦涩的东西的。

直到前几天,我在OSC上面发现了DzzOffice,当时看到介绍后,直觉认为它是可以胜任我的需求的,当时基于两点

1、界面实在是漂亮;

2、支持阿里云、百度云和本地存储。

为了更进一步了解DzzOffice,加入到QQ群,知道对于HDFS的支持目前还没有提供,但我认为这不是问题,DzzOffice在不断进步中,而我心中的私有云也可以持续加入一些必要的支持。

了解DzzOffice,我先在官网http://www.dzzoffice.com/上面了解了一下背景,运行在典型的LAMP/WAMP平台上,是否可以在公司内部服务器Docker群中加入一个Docker容器来专门运行DzzOffice,经过实际测试,很轻松就完成这个设想,很完美。为了便于大家在Docker上面体验DzzOffice,我将Docker工程提交Github上面,接下来就根据Github上面的工程来一步一步安装DzzOffice。

二、安装步骤

我在Github上面创建了dzzwithdocker项目,可以到这里查看项目

https://github.com/sundytu/dzzwithdocker

1、下载项目

Git的项目,你可以clone或者直接下载zip包到本地,然后解压到一个目录下面,这里假定你把系统解压到/home/cores/dockers/dzz1.0目录下面

2、创建dzz镜像

进入到dzz1.0目录中,通过执行 docker build -t dzz10 .生成dzz10镜像,由于国内网络情况,这是一个漫长的过程,我花费了大概半个小时(还不包含ubuntu镜像的下载时间,因为之前已经下载完成该部分镜像)

如果安装失败,请重复执行几次,肯定能成功的。

然后执行 docker images命令查看是否有dzz10名称的image是否创建成功。

3、启动dzz容器

完成dzz1.0镜像的构建,通过 docker run命令启动一个容器,并将80和22端口映射到宿主机器端口上面,便于我们在浏览器中访问,我这里将80端口映射到8081端口(因为我的80,8080都已经映射给其他服务的docker容器 :-( ),命令如下

docker run -d -p 8081:80 -p 2221:22 dzz10

4、配置DzzOffice

在浏览器中输入http://127.0.0.1:80801来访问系统,如果看到如图界面,恭喜您,安装DzzOffice成功了,剩下就是配置了

经过一番配置,可以看到华丽丽的界面了 :-)

三、单机安装

为了在Github上面创建dzzwithdocker项目,我在我的本子(ThinkpadT420i 8G内存)上使用Vageant + VirtualBox方式部署coreos系统,然后在coreos环境中下载dzzwithdocker项目文件,解压,然后构建docker镜像,运行容器,通过浏览器(Chrome)设置,访问,一切正常,下面是整个系统的图示。

又是华丽丽的界面 :-)

涂飞平2014-05-18 北京

如何在Docker中部署DzzOffice的更多相关文章

  1. 如果在docker中部署tomcat,并且部署java应用程序

    1.先说如何在docker中部署tomcat 第一步:root用户登录在系统根目录下创建文件夹tomcat7,命令如:mkdir tomcat7,并且切换到该目录下:cd tomcat7: 第二步:创 ...

  2. ​在Docker中部署GreatSQL并构建MGR集群

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 为了方面社区用户体验GreatSQL,我们同时还提供Docker镜像,本文详细介绍如何在Docker中部署GreatSQL ...

  3. Kubernetes入门(四)——如何在Kubernetes中部署一个可对外服务的Tensorflow机器学习模型

    机器学习模型常用Docker部署,而如何对Docker部署的模型进行管理呢?工业界的解决方案是使用Kubernetes来管理.编排容器.Kubernetes的理论知识不是本文讨论的重点,这里不再赘述, ...

  4. 在docker中部署centos7镜像

    本篇文章参考自: https://www.cnblogs.com/linjj/p/5606911.html https://blog.csdn.net/u012767761/article/detai ...

  5. docker 中部署一个springBoot项目

    docker 中部署一个springBoot项目 (1)介绍 springBoot项目 1.项目结构 2.pom.xml <?xml version="1.0" encodi ...

  6. Docker环境中部署DzzOffice 1.2.5.2

    整体思路: 1.官方获取mysql.php+apache镜像: 2.基于php+apache,创建DzzOffice镜像: 3.启动mysql镜像: 4.启动DzzOffice镜像,链接mysql镜像 ...

  7. 在Docker中部署Spring Boot项目

    想要获取更多文章可以访问我的博客 - 代码无止境. 微服务现在在互联网公司可谓非常流行了,之前找工作的的时候很多HR电话约面试的时候都会问对微服务是否有过接触.而微服务和Docker可以非常完美的结合 ...

  8. Docker中部署Kubernetes

    Kubernetes为Google开源的容器管理框架,提供了Docker容器的夸主机.集群管理.容器部署.高可用.弹性伸缩等一系列功能:Kubernetes的设计目标包括使容器集群任意时刻都处于用户期 ...

  9. docker中部署mongodb副本集

    1.基本信息如下 服务器地址 192.168.73.129 副本集名称 rs 容器节点及端口映射         m0 37017:27017         m1 47017:27017       ...

随机推荐

  1. 实用Linux命令,不求最全但求实用-------iptables命令实战

    开始配置 我们来配置一个filter表的防火墙. (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCE ...

  2. 《Java编程那点事儿》读书笔记(三)——static,this,抽象类,接口和包

    1. static 1)静态变量:Java虚拟机为静态变量开辟单独的存储空间,所以所有的对象内部的静态变量在内存中都指向同一个地址,那么不管哪个对象改变这个成员变量,所有对象中该成员变量的值都发生变化 ...

  3. Eclipse插件安装与使用 —— Properties Editor

    一.下载     首先当然是下载插件啦! 下载地址:http://sourceforge.jp/projects/propedit/downloads/40156/jp.gr.java_conf.us ...

  4. Kobject结构体分析

    kobject是组成设备device.驱动driver.总线bus.class的基本结构.如果把前者看成基类,则后者均为它的派生产物.device.driver.bus.class构成了设备模型,而k ...

  5. leetcode:Plus One

    Given a non-negative number represented as an array of digits, plus one to the number. The digits ar ...

  6. visual studio 中删除多余的空白行

    替换  Ctrl+H  正则  勾选  替换 ^\s*\n 为空

  7. 3D volume texture和cube map

    cube map texture可以理解为6个面的纸盒, sample的时候使用vector射线型的sample. volume texture可以理解是一摞2D texture,sample的时候用 ...

  8. 【温故知新】c#异步编程模型(APM)--使用委托进行异步编程

    当我们用到C#类许多耗时的函数XXX时,总会存在同名的类似BeginXXX,EndXXX这样的函数. 例如Stream抽象类的Read函数就有 public abstract int Read(byt ...

  9. Linux多线程(二)(线程等待,退出)

    1. 线程的等待退出 1.1. 等待线程退出 线程从入口点函数自然返回,或者主动调用pthread_exit()函数,都可以让线程正常终止 线程从入口点函数自然返回时,函数返回值可以被其它线程用pth ...

  10. UVa 714 (二分) Copying Books

    首先通过二分来确定这种最大值最小的问题. 假设每个区间的和的最大值为x,那么只要判断的时候只要贪心即可. 也就是如果和不超过x就一直往区间里放数,否则就开辟一个新的区间,这样来判断是否k个区间容得下这 ...