文/Anoyi
前言介绍
stack 是构成特定环境中的 service 集合, 它是自动部署多个相互关联的服务的简便方法,而无需单独定义每个服务。
stack file 是一种 yaml 格式的文件,类似于 docker-compose.yml 文件,它定义了一个或多个服务,并定义了服务的环境变量、部署标签、容器数量以及相关的环境特定配置等。
Stack File 的编写
服务的各种配置已在之前的文章中介绍,只是在书写格式上有所变化,可以对应官方文档列举的 Demo 做参考:
示例:使用 Stack 部署 Docker Swarm 入门:Service Network 管理 的应用
version: '3.4'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
部署 Stack
用法
docker stack deploy [OPTIONS] STACK
参数
| 简写 | 参数 | 默认值 | 描述 | 
|---|---|---|---|
| --bundle-file | 【实验阶段】分布式应用程序包文件的路径 | ||
| -c | --compose-file | Stack File 路径 | |
| --prune | 删除不再被引用的服务 | ||
| --resolve-image | always | 查询 Registry 以解决镜像摘要和支持的平台(“always”、”changed”、”never”) | |
| --with-registry-auth | 向 Swarm 代理发送 Registry 认证详细信息 | 
示例:将上述内容写到文件 stack.yml 中,然后部署
docker stack deploy -c stack anoyi_mongo
Stack 列表
用法
docker stack ls
Stack 服务列表
docker stack services [OPTIONS] STACK
Stack 任务列表
用法
docker stack ps [OPTIONS] STACK
Stack 删除
用法
docker stack rm STACK [STACK...]
示例:
docker stack rm anoyi_mongo
作者:Anoyi
链接:https://www.jianshu.com/p/25c529e3a3e6
点击查看更多内容
					为 TA 点赞
										
				 评论
				共同学习,写下你的评论
评论加载中...
作者其他优质文章
					正在加载中
				
			感谢您的支持,我会继续努力的~
		扫码打赏,你说多少就多少
		赞赏金额会直接到老师账户
		支付方式
		打开微信扫一扫,即可进行扫码打赏哦
	 
                 
            



 
			 
					 
					