本文主要是介绍docker swarm 管理服务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
docker swarm中服务的概念是:一个服务包含swarm集群中多个节点,每个节点都可以部署服务,每个服务也包含多个相关的容器。
docker service --help
Commands:create Create a new serviceinspect Display detailed information on one or more servicesls List servicesps List the tasks of a servicerm Remove one or more servicesscale Scale one or multiple replicated servicesupdate Update a service
在主节点上创建一个服务,副本数是2个,防止服务在运行结束后退出,增加命令 ping "www.baidu.com"
[root@worker3 ~]# docker service create --name busy-box --replicas 2 busybox ping "www.baidu.com"
dnmw2wdgs4xbj6bw3ma4d5jam
查看节点的所有服务,
[root@worker3 ~]# docker service ls
ID NAME MODE REPLICAS IMAGE
3z658klw8dbd my-web replicated 2/2 nginx:latest
dnmw2wdgs4xb busy-box replicated 2/2 busybox:latest
[root@worker3 ~]# docker service create --replicas 3 --name redis --update-delay 10s redis:3.0.6
383zekusyout2r639vmfx3ejy
[root@worker3 ~]# docker service ps redis
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
kta1fy9wcdzf redis.1 redis:3.0.6 master Running Preparing 8 seconds ago
bu3xvvq6jghu redis.2 redis:3.0.6 master Running Preparing 8 seconds ago
j7b7c0d86ey0 redis.3 redis:3.0.6 worker3 Running Running 8 seconds ago
查看服务的具体的信息
[root@worker3 ~]# docker service ps busy-box
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
mrv2xv10g1t5 busy-box.1 busybox:latest worker3 Running Running 3 minutes ago
v26re4k304c2 busy-box.2 busybox:latest master Running Running 3 minutes ago
docker swarm 删除一个服务
[root@worker3 ~]# docker service rm my-web
my-web
docker swarm 服务更新,以一个常见的镜像更新为例子
[root@worker3 ~]# docker service create --replicas 3 --name redis --update-delay 10s redis:3.0.6
383zekusyout2r639vmfx3ejy
[root@worker3 ~]# docker service ps redis
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
kta1fy9wcdzf redis.1 redis:3.0.6 master Running Preparing 8 seconds ago
bu3xvvq6jghu redis.2 redis:3.0.6 master Running Preparing 8 seconds ago
j7b7c0d86ey0 redis.3 redis:3.0.6 worker3 Running Running 8 seconds ago
docker swarm update 更新服务的镜像
[root@worker3 ~]# docker service update --image redis:latest redis
[root@worker3 ~]# docker service ps --filter "desired-state =running" redis
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
nk7tktytm7kk redis.1 redis:latest master Running Running 4 minutes ago
uobcdvbzq4kk redis.2 redis:latest worker3 Running Running 4 minutes ago
cdozh8bw6m8p redis.3 redis:latest worker3 Running Running 4 minutes ago
这篇关于docker swarm 管理服务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!