一,Docker管理工具之官方三剑客
Docker Machine是什么鬼
从前-- 你需要登录主机,按照主机及操作系统特有的安装以及配置步骤安装Docker,使其能运行Docker容器。
现在-- Docker Machine的产生简化了这一过程,让你可以使用一条命令在你的计算机,公有云平台以及私有数据中心创建及管理Docker主机。
Create Docker Machine主要包括三个Create过程。
• 首先是Provider Create(libmachine/provider.go),此函数主要是在当前运行docker-machine命令主机上创建以machine name命名的文件夹,并将根证书,服务器证书以及用户证书拷贝到此文件夹。
• 其次是Driver create(例如drivers/virtualbox/virtualbox.go)用来创建主机,
• 最后是运行Host create(libmachine/host.go)通过SSH安装并配置Docker。目前在本地环境中使用的是boot2docker镜像,云端环境使用的是Ubuntu镜像。
其实真相是这样的:自动创建一个虚机并且安装好设置好Docker Engine
Docker Swarm
swarm则将一组docker enginge作为一个集群进行管理,并提供过了lablel,schedule,filter的能力。其中调度部分,允许用户定制自己的调度策略。
1.docker run -e "constraint:operationsystem=fedora"
2.docker run -e "constraint:storagedriver=aufs"
二,Docker管理工具——Tutum
三,Docker管理工具——shipyard
Shipyard 是一个基于 Web 的 Docker 管理工具,支持多 host,可以把多个 Docker host 上的 containers 统一管理;
可以查看 images,甚至 build images;并提供 RESTful API 等等。 Shipyard 要管理和控制 Docker host 的话需要先修改 Docker host 上的默认配置使其支持远程管理
填写Docker 主机的名字、CPU核心数、内存数量(单位MB)、以及Labels,比如部署Web的标签为web,以后调度容器的时候,会优先调度到相应的标签。
Containers标签页显示了所有的Docker容器,可以按照Engine(主机)排序,目前还没有分页和查询功能。
点击Container标签页的Deploy按钮,可以启动新的容器
容器的镜像,名称,环境变量,启动参数,是否有Volume存储、是否有端口映射等都可以在界面上定义。启动成功以后,可以看到列表中新容器的状态为RUNNING:
点击容器的链接,可以看到容器的细节信息,如端口、CPU占用、内存占用、环境变量、重启策略等,还可以重启、停止、销毁容器或者查看容器日志。
如果容器启动失败,或者排查问题,则可以查看容器的日志信息:
四,Docker管理工具——cAdvisor