Docker系列(五)-docker swarm安装及使用
1.docker swarm的安装
1.初始化manager节点
docker swarm init --advertise-addr=192.168.50.11
2.加入worker节点
docker swarm join --token SWMTKN-1-41k8btiw91kxppwsgt30iv4f86ownyu5gho2r9jlo4ifxh3p6k-btivncce7dtvbzc8kmr05hsiy 192.168.50.11:2377
3.查询节点状态
docker node ls
4.可以将worker节点提升成manager
docker node promote worker01-node docker node promote worker02-node
#降级可以用demote
docker node demote worker01-node
2.docker swarm的
1.创建service
docker service create --name service_name image_name
2.查看当前swarm的service
docker service ls
3.查看service的启动日志
docker service logs service_name
4.查看service的详情
docker service inspect service_name
5.查看service运行在哪个node上
docker service ps service_name
6.水平扩展service
docker service scale service_name=3
7.删除service
docker service rm service_name
8.创建一个overlay网络
docker network create -d overlay my-overlay-net
9.创建使用overlay网络的service
docker service create --name tomcat -p 8080:8080 --network my-overlay-net tomcat
2.docker stack的
1.stack file文件格式
version: '3'
services:
mongo:
image: mongo
restart: always
networks:
- mongo_network
deploy:
restart_policy:
condition: on-failure
replicas: 2
mongo-express:
image: mongo-express
restart: always
networks:
- mongo_network
ports:
- target: 8081
published: 80
protocol: tcp
mode: ingress
environment:
ME_CONFIG_MONGODB_SERVER: mongo
ME_CONFIG_MONGODB_PORT: 27017
deploy:
restart_policy:
condition: on-failure
replicas: 1
networks:
mongo_network:
external: true
2.部署堆栈
docker stack deploy
3.列出现有堆栈
docker stack ls
4.列出堆栈中的任务
docker stack ps
5.删除一个或多个堆栈
docker stack rm
6.列出堆栈中的服务
docker stack services