Docker Swarm 创建服务
环境:
- 系统:Centos 7.4 x64
- 应用版本:Docker 18.09.0
- 管理节点:192.168.1.79
- 工作节点:192.168.1.78
- 工作节点:192.168.1.77
1、管理节点:创建测试服务
docker service create --replicas 1 --name hello busybox ping www.baidu.com
# 创建服务命令
docker service create
# 开启的副本数量
--replicas 1
# 服务名称
--name hello
# 使用的image镜像
busybox
# 容器内启动的指令
ping www.baidu.com
命令解析
注:busybox启动失败后manager尝试重启容器,但是busybox容器内没有持续运行的任务,manager会将它关闭,所以没有启动成功。向容器添加ping www.baidu.com持续动作避免容器关闭。
# 查看服务器动信息
docker service ls
ID NAME MODE REPLICAS IMAGE
t1vtb3ryobaa hello replicated 1/1 busybox:latest 注:
MODE 调度模式
replicated:会根据默认的节点去调度算法。
glob:保证每个节点都有容器任务。
REPLICAS 副本数:成功副本数/分配副本数
IMAGE:镜像
输出
2、管理节点:扩展副本数
docker service scale hello=3
# 缩容扩容服务
docker service scale
# 服务名=副本数
hello=3
命令解析
# 查看运行容器服务分别平均分配给工作节点内。
docker service ps -f "desired-state=running" hello
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
b834diy4blto hello.1 busybox:latest management Running Running 2 hours ago
wbtbkwvjdn87 hello.2 busybox:latest slave01 Running Running 26 seconds ago
7xl54770xl8w hello.3 busybox:latest slave02 Running Running 26 seconds ago
输出