在docker中,stack的意思是“堆栈式服务”,是一组可以被编排并具备扩展能力的关联service服务,用于多服务部署和应用管理,在compose文件中定义应用,通过“docker stack deploy”命令完成部署和管理。

本教程操作环境:linux7.3系统、docker-1.13.1版、Dell G3电脑。
docker中stack是什么意思
大规模场景下的多服务部署和管理是一件很难的事情。
幸运的是,Docker Stack 为解决该问题而生,Docker Stack 通过提供期望状态、滚动升级、简单易用、扩缩容、健康检查等特性简化了应用的管理,这些功能都封装在一个完美的声明式模型当中。
在笔记本上测试和部署简单应用很容易。但这只能算业余选手。在真实的生产环境进行多服务的应用部署和管理,这才是专业选手的水平。
幸运的是,Stack 正为此而生!Stack 能够在单个声明文件中定义复杂的多服务应用。Stack 还提供了简单的方式来部署应用并管理其完整的生命周期:初始化部署 -> 健康检查 -> 扩容 -> 更新 -> 回滚,以及其他功能!
步骤很简单。在 Compose 文件中定义应用,然后通过 docker stack deploy 命令完成部署和管理。
Compose 文件中包含了构成应用所需的完整服务栈。此外还包括了卷、网络、安全以及应用所需的其他基础架构。然后基于该文件使用 docker stack deploy 命令来部署应用。
Stack 是基于 Docker Swarm 之上来完成应用的部署。因此诸如安全等高级特性,其实都是来自 Swarm。
思乐微信商城微分销系统是以.net+access/mssql进行开发的微信分销系统。基于微信朋友圈的传播,是打造以分销商为中心的全新微信分销体验。让粉丝实时有效的获取朋友圈流量并快速分享购买分佣。因为是基于微信,所以要在微信上体验才更好。关注我们的微信核心功能:1、自动提示用户关注微信,解决一般程序无关注微信公众号的过程2、只要通过链接进一次,不过好久注册,什么方面注册,只要是用微信注册的,都会算
简而言之,Docker 适用于开发和测试。Docker Stack 则适用于大规模场景和生产环境。
如果了解 Docker Compose,就会发现 Docker Stack 非常简单。事实上在许多方面,Stack 一直是期望的 Compose——完全集成到 Docker 中,并能够管理应用的整个生命周期。
从体系结构上来讲,Stack 位于 Docker 应用层级的最顶端。Stack 基于服务进行构建,而服务又基于容器,如下图所示。

在后续的讲解中会一直使用示例应用 AtSea Shop。该示例托管在 Github 的 dockersamples/atsea-sample-shop-app 库中,基于 Apache 2.0 许可证开源。
使用该应用是因为其复杂度适中,不会因为太复杂而难以完整解释。除此之外,该应用还是个多服务应用,并且利用了认证和安全相关的技术。应用架构如下图所示。

推荐学习:《docker视频教程》







