提示
swarm 是docker内置的轻量级容器编排工具,其中的主机称为master,节点机称为worker。
swarm 中的的服务只可以通过镜像创建。镜像获取方式为本地&远程。远程会默认去docker默认仓库获取,速度十分缓慢,强烈建议不要用!
为了方便更新镜像同时同步到多点集群环境,最好自建私有仓库来使用。自建私有仓库的方式由另外一篇文章讲解。
docker版本为1.13.1
创建manager
> docker swarm init --listen-addr 172.16.230.176:8888 --advertise-addr 172.16.230.176

   172.16.230.176为当前主机的IP,8888为对外worker开放的连接端口。

加入集群(在worker中使用)
> docker swarm join --token SWMTKN-1-0lqygi9d86aidh40a71dl2d4x4heaz8u8vhtojrhtybpqlr47s-1vp4t64vl7q4argkuwu8a0rjx 172.16.230.176:8888

   swarm init 完成后,系统会自动创建该语句,可直接在worker机器上使用。

查看节点
> docker node ls
删除某节点
> docker node rm ${NODE_ID}
创建服务
> docker service create --replicas 1 --name ${serviceName} ${imageName}
服务动态扩容
> docker service scale ${serviceName}=5
查看服务状态
> docker service ps ${serviceName}

> docker service ls
回滚服务
> docker service rollback ${serviceName}
更新服务
> docker service update --publish-add 8080:8080 ${serviceName}

> docker service update --image ${imageName} ${serviceName}

   --publish-add 可修改服务对外端口。
   --image 可修改服务对应的镜像。

移除服务
docker service remove &{serviceName || serviceId}

夜丿未央
7 声望0 粉丝