一、shipyard
1.1 概述
Shipyard也是完全基于Docker API,支持container管理、engine管理(一个engine就是监听tcp端口的docker daemon)。
优点:
支持多主机;
支持container及engine资源限制及图形展示;
支持container实例横向扩展;
支持批量创建,支持images,container,node节点管理;
支持创建时自动调度,动态集群,可以扩展节点规模;
在线console终端;
缺点:
不支持container批量操作。
1.2 相关组件
shipyard依赖的容器
- Rethinkdb容器:作为数据存储工具(用来存放账号(account)、引擎(engine)、服务密钥(service key)、
扩展元数据(extensionmetadata)等信息,但不会存储任何有关容器或镜像的内容。) - etcd容器:作为服务发现工具
- docker-proxy:docker容器网络代理工具
- swarm:swarm管理器
1.3 安装部署
安装shipyard
yum install docker -y && \
systemctl start docker && \
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://d6f11267.m.daocloud.io
for i in alpine library/rethinkdb microbox/etcd shipyard/docker-proxy swarm shipyard/shipyard;do docker pull $i;done
执行安装curl -s https://shipyard-project.com/deploy | bash -s
shipyard访问页面默认登录用户名:admin,密码:shipyard,登录进去后,可以在"ACCOUNTS"选项里管理用户,可以添加用户,并对用户进行角色授权。
添加node节点
curl -sSL https://shipyard-project.com/deploy | ACTION=node DISCOVERY=etcd://172.20.6.20:4001 bash -s
上面命令中的172.20.6.20是shipyard的部署机的ip;
1.4 web管理
Container管理
可以对Container进行重启、停止、暂停、删除、扩展、重命名、提交、查看状态监控/日志、及console登录等。
Images管理
可以pull为images打tag
Nodes管理
其次shipyard还有registries、accounts、events管理。
二、DockerUI
2.1 概述
DockerUI基于Docker API,提供等同Docker命令行的大部分功能,支持container管理,image管理。
优点:
支持container批量操作;
支持image管理(虽然比较薄弱)
缺点:
不支持多主机。
2.2 安装部署
安装docker
docker pull uifd/ui-for-docker
docker run -it -d --name docker-web -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock docker.io/uifd/ui-for-docker
访问URL:http://IP:9000/
2.3 WEB管理
DashBoard
Containers
支持容器的启停,生命周期内的操作