Docker系列十五:dockerStack部署项目和进行容器的监控
参考网站:https://docs.docker.com/compose/compose-file/#build项目一使用:Compose file version 3 reference三个节点:Manager,node2.和node3yml文件:docker-compose.ymlversion: '3'services:web:image:...
·
参考网站:
https://docs.docker.com/compose/compose-file/#build
项目一
使用:Compose file version 3 reference
三个节点:Manager,node2.和node3
yml文件:docker-compose.yml
version: '3'
services:
web:
image: wordpress
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: mysql
WORDPRESS_DB_PASSWORD: root
networks:
- my-network
depends_on:
- mysql
deploy:
mode: replicated
replicas: 3
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
update_config:
parallelism: 1
delay: 10s
mysql:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: wordpress
volumes:
- mysql-data:/var/lib/mysql
networks:
- my-network
deploy:
mode: global
placement:
constraints:
- node.role == manager
volumes:
mysql-data:
networks:
my-network:
开始执行:
docker stack deploy wordpress --compose-file=docker-compose.yml
运行正常:
删除wordpress项目
docker stack ps wordpress 查看项目
docker stack rm wordpress 删除项目
删除项目也会把创建的网络一起删除
项目二:搭建投票系统
version: "3"
services:
redis:
image: redis:alpine
ports:
- "6379"
networks:
- frontend
deploy:
replicas: 2
update_config:
parallelism: 2
delay: 10s
restart_policy:
condition: on-failure
db:
image: postgres:9.4
volumes:
- db-data:/var/lib/postgresql/data
networks:
- backend
deploy:
placement:
constraints: [node.role == manager]
vote:
image: dockersamples/examplevotingapp_vote:before
ports:
- 5000:80
networks:
- frontend
depends_on:
- redis
deploy:
replicas: 2
update_config:
parallelism: 2
restart_policy:
condition: on-failure
result:
image: dockersamples/examplevotingapp_result:before
ports:
- 5001:80
networks:
- backend
depends_on:
- db
deploy:
replicas: 1
update_config:
parallelism: 2
delay: 10s
restart_policy:
condition: on-failure
worker:
image: dockersamples/examplevotingapp_worker
networks:
- frontend
- backend
deploy:
mode: replicated
replicas: 1
labels: [APP=VOTING]
restart_policy:
condition: on-failure
delay: 10s
max_attempts: 3
window: 120s
placement:
constraints: [node.role == manager]
visualizer:
image: dockersamples/visualizer:stable
ports:
- "8080:8080"
stop_grace_period: 1m30s
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
deploy:
placement:
constraints: [node.role == manager]
networks:
frontend:
backend:
volumes:
db-data:[root@docker-host example-vote-app]
开始运行:
查看节点运行:
[root@docker-host example-vote-app]# docker stack ls
NAME SERVICES ORCHESTRATOR
example 6 Swarm
docker stark service ps example
可视化监控:
也可以运行:
docker run -itd -p 5000:5000 -e HOST=192.168.205.10 -e PORT=5000 -v /var/run/docker.sock:/var/run/docker.sock manomarks/visualizer
更多推荐
已为社区贡献2条内容
所有评论(0)