docker集成管理工具-shipyard的开发环境搭建笔记

时间:2023-03-08 19:00:46

  前段时间一直在研究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.****.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