[root@swarm-manager example-vote-app]# docker network create -d overlay demo
ycmwxqjbebksqxcblqigruj9u
[root@swarm-manager example-vote-app]# docker service create --name web --publish 8080:5000 --network demo xiaopeng163/python-flask-demo:1.0
kg7ibu3es51yg63vylgnm0ijm
overall progress: 1 out of 1 tasks
1/1: running [==================================================>]
verify: Service converged
[root@swarm-manager example-vote-app]# docker service ps web
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
uxtqfknfeg1l web.1 xiaopeng163/python-flask-demo:1.0 swarm-worker2 Running Running 29 seconds ago
[root@swarm-manager example-vote-app]# docker service scale web=2
web scaled to 2
overall progress: 1 out of 2 tasks
overall progress: 2 out of 2 tasks
1/2: running [==================================================>]
2/2: running [==================================================>]
verify: Service converged
[root@swarm-manager example-vote-app]#
[root@swarm-manager example-vote-app]# docker service ps web
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
uxtqfknfeg1l web.1 xiaopeng163/python-flask-demo:1.0 swarm-worker2 Running Running about a minute ago
vq90li4so145 web.2 xiaopeng163/python-flask-demo:1.0 swarm-worker1 Running Running 8 seconds ago
[root@swarm-manager example-vote-app]# curl 127.0.0.1:8080
hello docker, version 1.0
sh -c "while true; do curl 127.0.0.1:8080&&sleep 1; done"
另外一台机器不停的请求。
开始更新:
[root@swarm-manager example-vote-app]# docker service update --image xiaopeng163/python-flask-demo:2.0 web
web
overall progress: 2 out of 2 tasks
1/2: running [==================================================>]
2/2: running [==================================================>]
verify: Service converged
一会就全部更新完成
根据端口更新:
docker service update --publish-rm 8080:5000 --publish-add 8088:5000 web
如果是yml更新的话,执行默认的语句即可:
docker stack deploy wordpress --compose-file=docker-compose.yml