一、一些背景

之前研究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. [iOS]把16进制(#871f78)颜色转换UIColor

    // // ViewController.m // text // // Created by 李东旭 on 16/1/22. // Copyright © 2016年 李东旭. All rights ...

  2. Java:编码的详解

    ASCII:美国信息标准信息码,用一个字节的7为表示. ISO8859-1:拉丁码表 欧洲码表 ,用一个字节的8位表示. GB2312:中国的中文编码表. GBK:中国的中文编码表升级,融合了更多的中 ...

  3. O(1)时间内删除指定链表结点

    题目 给定单链表头指针和一个结点指针,定义一个函数在O(1)时间内删除该结点. 分析 对于上图实例链表(a)删除指针p有两种方式 思路1:(b)找到前一个指针pre,赋值pre->next = ...

  4. onTouch与onClick事件的关系

    这几天遇到点关于Android的触摸事件相关的,还跟onClick有关,暂且记下: LinearLayout分别设置了onTouchListener,onClickListener,onLongCli ...

  5. ASP.NET26个性能优化方法

    1.数据库访问性能优化 (1)数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源. ASP.NET中提供了连 ...

  6. 在linux系统下检查postgresql数据库安装,登录数据库及简单的查看数据库

    1.    检查Linux系统是否安装数据库 首先查看自己的系统是否安装了postgresql数据库命令如下: rpm -qa | grep postgresql 如果没有显示查询结果(如下图所示)说 ...

  7. 每天一个小算法(Shell Sort3)

    希尔算法自己编了一个,循环很多,很不美观,不过运行正确: c语言实现: #include <stdio.h> #include <stdlib.h> #define LEN 2 ...

  8. Android HTTPS(1)概念和简单示例

    Security with HTTPS and SSL The Secure Sockets Layer (SSL)—now technically known as Transport Layer ...

  9. 多个电脑共用一个ssh

    比如我们有多个设备,但不想每个设备上生成一个ssh key,然后去github或其他网站上添加,那样的话,ssh key会比较多,搞起来会比较乱,所以我们想在不同的设备上使用同一个ssh. 做法是,我 ...

  10. 跨域利器JSONP(转)

    何为跨域?何为JSONP?JSONP技术能实现什么?是否有必要使用JSONP技术? 跨域 就是由于JavaScript同源策略的限制,使得a.com域名下的js无法操作b.com或c.a.com域名下 ...