前段时间一直在研究openstack,后来老师告诉我需要用docker容器来搭建hadoop集群,所以就将战场转移到docker上来了,话说docker最近这段时间太火了,但是说实话我觉得应用起来还不是很成熟,问题不少。 就拿docker容器管理来说吧,现在没有一个官方的成熟的docker管理平台,还得我们敲命令行来操作,对于运维还是有一定难度的。由于项目需要,需要开发一套docker容器的管理平台,所以我就在网上先找现成的,皇天不负苦心人,让我发现了shipyard。

  首先shipyard是基于多主机管理的,这一点就满足了我的需求,也在前期帮我解决了很多问题,其他他已经现成做好了一个看起来不错的管理界面,又让我省心不少。基于以上两点我决定使用shipyard。

  然而事情总是没有一帆风顺的,首先碰到的几个问题是,shipyard是基于python开发的,而shipyard-agent是基于go语言开发的,两种语言都没接触过,让我甚是头疼。在这里我就忍不住抱怨一下了,在接触云计算以后,整个世界都不清净了,一下子冒出了很多很多新技术,以前在学校学习java web,c++的时候很单纯,就是把语法掌握,然后跟着老师做一两个项目也就基本熟练了,一般情况下就是增加熟练程度而已,不会有太多新的东西出来。然而现在接触了云计算以后感觉技术面太广了,我才接触了没多久,就感觉亚历山大,比如一开始的时候接触openstack, 这个项目实在是庞大,就算要把整个架构搞懂也有话不少时间,而且我以前是搞java的,现在又要研究python,总是觉得很变扭。我花了很长时间才把openstack分布式平台搭建起来。然后又有paas层的CloudFoundry 老师说这个比openstack还要难很多。 现在由于项目需要,要使用docker,总之进入以后才发现,水很深啊。 而且我现在也没有一个明确的目标,对这方向也不是很了解,将来何去何从呢?

  说了那么多废话,也就是想表达一下最近的感慨,如果有同道中人认同的的话可以交流一下,如果有资深老前辈看到的话,希望不吝赐教,给小弟我指跳明路,tks~

---------------------------------------------------以上是废话,可看可不看-------------------------------------------------------------------------------------

今天成功搭建来shipyard开发环境

1.首先使用ubuntu12.04系统

2.自带的python版本是2.7.3,只要是2.7的都是可以使用

3.接下来安装python开发环境

我使用了两种开发环境

第一种: http://blog.csdn.net/kingppy/article/details/13080919    会安装pip和virtualenv等,使用的开发工具是 Sublime Text 2

第二种:http://www.cnblogs.com/iloveyoucc/archive/2012/06/23/2559256.html   这种方法是exlipse+Python开发环境

4.在安装好python开发环境后,接下来就要安装docker

5. 安装docker :https://docs.docker.com/installation/ubuntulinux/#ubuntu-precise-1204-lts-64-bit

6. 在安装完docker以后就可以安装shipyard, shipyard也有两种安装方式

7.方式一: https://github.com/shipyard/shipyard/wiki/QuickStart  参照官方提供的方式,使用作者提供的docker  image安装,这个方式最简单,但是不适合开发

8.方式二: http://www.vpsee.com/2013/11/shipyard-a-docker-web-ui/  这种方式稍微复杂一点,是通过源码编译安装,可能在编译过程种会出现各种问题,需要耐心解决

 如果用这种安装方式的话有一个好处,就是可以直接用开发工具修改源码,刷行网页就能看到效果,对于开发非常方便。

9.在部署好开发环境以后,进入shipyard目录  使用命令 sudo python manage.py runserver 0.0.0.0:8000 就可以开启服务了

10. 其中我遇到了一个问题,就是网页打开特别慢,按理来说在本地打开是瞬间的问题,这是为所么呢? 通过观察发现是项目中使用了google的字体库,由于google被墙了,

你懂的。  解决方案是,打开文件shipyard/shipyard/static/css/flat-ui-fonts.css

把第一行@import url("http://fonts.googleapis.com/css?family=Lato:400,700,700italic,900,400italic,300");

换成 @import url("http://fonts.useso.com/css?family=Lato:400,700,700italic,900,400italic,300");

11. 到目前为止,shipyard的开发环境就算是搭建好了,有问题可以交流交流
12. 接下来安装shipyard-agent     https://github.com/shipyard/shipyard-agent 如果没有这个docker主机上安装这个代理的话,系统是无法链接docker主机的,shipyard是用go语言开发的

  安装方法是使用docker命令:
docker run -i -t -v /var/run/docker.sock:/docker.sock   -e IP=`ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{print $1;}'`   -e URL=http://10.82.81.237:8000 -p 4500:4500 shipyard/agent

docker集成管理工具-shipyard的开发环境搭建笔记的更多相关文章

  1. 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记

    近期想尝试一下英特尔的基于WebRTC协同通信开发套件,所以须要在本地搭建Node.js Web的开发測试环境. 这里讲的是CentOS 下的搭建方法.使用Windows的小伙伴请參考: <No ...

  2. Docker可视化管理工具Shipyard安装与配置

    Shipyard简介 Shipyard是一个集成管理docker容器.镜像.Registries的系统,它具有以下特点: 1.支持多节点的集成管理 2.可动态加载节点 3.可托管node下的容器 镜像 ...

  3. 《Python入门》Windows 7下Python Web开发环境搭建笔记

    最近想尝试一下在IBM Bluemix上使用Python语言创建Web应用程序,所以需要在本地搭建Python Web的开发测试环境. 关于Python的版本 进入Python的网站,鼠标移到导航条上 ...

  4. Unity3D 多人协作开发 环境搭建 笔记(场景合并)

    http://www.cnblogs.com/zhaoqingqing/p/3371120.html 说到多人协作开发,大家都会想到要使用版本控制工具来管理项目,当然最常用的要数SVN和Git了,但是 ...

  5. Windows 7下Node.js Web开发环境搭建笔记

    Node.js是什么? 我们看看百科里怎么说的?JavaScript是一种运行在浏览器的脚本,它简单,轻巧,易于编辑,这种脚本通常用于浏览器的前端编程,但是一位开发者Ryan有一天发现这种前端式的脚本 ...

  6. Android之ubuntu源码开发环境搭建笔记

    昨天,把电脑主机全换了,因此之前的工作环境得重新搭建,我是既开心又纠结,开心的是可以用高配置的电脑,纠结的是搭环境比较麻烦,稍有不慎,就会导致源代码编译不过,前功尽弃.为了减少工作量,以及避免不必要掉 ...

  7. Unity3D开发之Mac OS 开发环境搭建 笔记

    http://www.cnblogs.com/zhaoqingqing/p/3383167.html 首先上几张图: 摸索了一上午,才搞定在模拟器中运行.至于在Iphone真机中运行,虽然有开发者证书 ...

  8. Docker可视化管理工具对比(DockerUI、Shipyard、Rancher、Portainer)

    1.前言 谈及docker,避免不了需要熟练的记住好多命令及其用法,对于熟悉shell.技术开发人员而言,还是可以接受的,熟练之后,命令行毕竟是很方便的,便于操作及脚本化.但对于命令行过敏.非技术人员 ...

  9. Guns(开源后台管理系统框架)实战(一)——开发环境搭建

    1. 开发环境搭建 1.1. 开发环境要求 1.2. 配置Maven 1.3. 配置MySQL 1.4. Git克隆项目 1.5. Eclipse导入系统 2. 小结 3. 参考引用 1. 开发环境搭 ...

随机推荐

  1. 20.allegro.铺铜[原创]

    1.内层铺铜 --- ---- 选择复制对象 ---- ----- ---- ------ --- --- --- 2.外层铺铜 -- -- 假如没有指定网络: 给这块没有网络的铜皮指定网络 --- ...

  2. jquery.datatable插件从数据库读取数据

    一.分页 分页的基本思想是根据datatable的页码及每页显示的行数,将数据从数据库分段提出,然后再填充到表格中,以达到分页的效果. 这里需要用到datatable插件的几个属性: "sE ...

  3. bzoj3668: [Noi2014]起床困难综合症

    从高位到低位枚举期望的应该是ans最高位尽量取一.如果该数最高位为o的话能够取得1直接更新ans否则判断该位取1是否会爆m不会的话就加上. #include<cstdio> #includ ...

  4. python执行mysqldump命令

    本文简单讲述如何利用python执行一些sql语句,例如执行mysqldump命令,进行数据库备份,备份成sql文件 #!/usr/bin/python#导入os模块import os#导入时间模块i ...

  5. (转)python 优先队列

    #!/usr/bin/python from Queue import Queue from Queue import PriorityQueue a1='a1' a2='a2' a3='a3' a4 ...

  6. 几种Menu和几种对话框

    一.Menu     1.OptionsMenu(弹出菜单)         (1)显示弹出菜单布局必须要重写的方法    onCreateOptionsMenu    该方法必须返回true     ...

  7. 实现LoaderCallbacks接口动态循环加载网上图片并展示在手机屏幕上 ...

    1.布局xml文件 activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/re ...

  8. Windows下PHP+Eclipse开发环境搭建 及错误解决(apache2.2服务无法启动 发生服务特定错误:1)

    前言 Eclipse与php/apache的关系:Eclipse只是用来写代码的,如果想要在浏览器查看运行效果就要让php/apache的运行目录指向你的代码目录.Eclipse貌似不会自己和apac ...

  9. Java Web 乱码

    1.mySql编码 2.jdbc编码 http://www.blogjava.net/NicholasEcho/archive/2008/11/03/238310.html ----- 1.HttpG ...

  10. C#对Excel打印时,PageSetup 对象详解

    PageSetup 对象包含所有页面设置的属性(左边距.底部边距.纸张大小等).下面按“页面”.“页边距”.“页眉/页脚”.“工作表”和“无对应选项卡”五个类别,逐一介绍. 一.页面 与“页面”选项卡 ...