如何在docker service不删除(rm)的情况下停止它?
Commands:
create Create a new service
inspect Display detailed information on one or more services
logs Fetch the logs of a service or task
ls List services
ps List the tasks of one or more services
rm Remove one or more services
rollback Revert changes to a service's configuration
scale Scale one or multiple replicated services
update Update a service
Run Code Online (Sandbox Code Playgroud)
小智 11
docker service scale [servicename]=0
Run Code Online (Sandbox Code Playgroud)
将删除所有正在运行的实例但仍保持服务对象的活动状态.
例如.
[node1] (local) root@192.168.0.8 ~
$ docker service create --name test-service nginx
cjvbwuhjhwpixwg01nh22cqbq
overall progress: 1 out of 1 tasks
1/1: running [==================================================>]
verify: Service converged
[node1] (local) root@192.168.0.8 ~
$ docker service scale test-service=0
test-service scaled to 0
overall progress: 0 out of 0 tasks
verify: Service converged
[node1] (local) root@192.168.0.8 ~
$ docker service ls
ID NAME MODE REPLICAS IMAGE PORTS
cjvbwuhjhwpi test-service replicated 0/0 nginx:latest
[node1] (local) root@192.168.0.8 ~
$
Run Code Online (Sandbox Code Playgroud)
该服务定义了一个目标状态。因此,与其停止和启动服务,不如停止已部署的容器而不删除服务,您可以将目标状态更改为没有容器运行的状态。对于复制服务,将副本计数设置为 0 效果很好,而对于全局服务,添加在任何节点上都不匹配的约束也可以:
docker service update --replicas 0 $service_name
docker service update --constraint-add no_such_node=true $service_name
Run Code Online (Sandbox Code Playgroud)
要删除停止所有已部署容器的服务,请运行:
docker service rm $service_name
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15263 次 |
| 最近记录: |