30 docker swarm service 的创建维护和水平拓展
运行环境在上两篇文章中已经搭建
1. 创建一个service (与 docker run 类似 ,创建一个 container)
docker service create --name demo busybox sh -c "while true;do sleep 3600; done"
查看 容器运行情况
docker service ps demo
说明 demo 容器 是运行 在 docker-host 上的
查看 创建的 service
docker service ls
其中 MODE 为 replicated 并且 REPLICAS 为 1/1 时 是 可以进行水平拓展的
查看 docker-host 上容器的情况 可以看到是创建了一个docker service create 是创建了一个容器的
docker ps
2. 使用 scale 进行横向拓展
创建 5 个 相同 的 demo 容器
docker service scale demo=5
查看 5 个容器运行情况
docker service ps demo
可以看出 其中 docker-host 有两个 service 运行 , 同理 node1 两个 , node2 一个
3. swarm 确保 相同的 service
在docker-node1 上
查看 镜像数
docker ps
停止其中一个 service ( 或者 container)
docker rm -f 90b33c4b2c21
在 docker-host 下
查看 demo 的 水平拓展情况 (发现还是有 5个镜像)
docker service ls
查看 demo 服务的具体请情况 (发现只不过 是 node1 停止后,在 node2 新创建了一个镜像)
docker service ps demo
4. 删除 demo 服务
docker service rm demo
会慢慢删除 各个节点上的 demo service 或者 容器