本文原文QQ空间链接:http://user.qzone.qq.com/29185807/blog/1462761975
本文原文csdn博文链接:http://blog.csdn.net/screscent/article/details/51351381
swarm是docker公司开发的一个管理docker集群的工具。swarm使用标准docker api来作为入口。功能简单,关键是复用了docker api。
下面将来简单的分析下swarm源码。
注:源码为swarm-0.1.0版本
1、command
我们先进入到main函数
代码在swarm\main.go
这里 初始化了一个app。其利用的是一个第三方库"github.com/codegangsta/cli"
然后添加了一个Before的动作,用于设置log
接着添加了create command
create操作,用于生成一个集群totken,用于集群的唯一标识
添加list command
list操作,用于打印当前集群中所有的node节点
添加了manage command还有join command。
最后调用了app.Run
manage操作,用于swarm manage的开启。
join操作,用于将机器添加到swarm集群中。</