Docker 应用程序堆栈应该由单个或多个群集组成?
我正在为Magento应用程序堆栈构建Docker Swarm。使用Swarm的主要原因是应用程序堆栈将在多节点环境中运行 以下是应用程序堆栈将运行的服务-Docker 应用程序堆栈应该由单个或多个群集组成?,docker,docker-compose,magento2,docker-machine,docker-swarm,Docker,Docker Compose,Magento2,Docker Machine,Docker Swarm,我正在为Magento应用程序堆栈构建Docker Swarm。使用Swarm的主要原因是应用程序堆栈将在多节点环境中运行 以下是应用程序堆栈将运行的服务- 清漆(加速剂) Nginx(web服务器) Redis(缓存/会话) MySQL(存储) 上述4项服务是否应属于单独的群集(即4个不同的群集)的一部分?或者,整个应用程序堆栈是否应该只有一个swarm集群以及某种机制(可能使用swarm过滤器),以便仅将服务部署到特定的节点集 最佳做法是什么 上述4项服务是否应属于单独的群集(即4个不同的群
参见码头工人船长的“”。
他创建了一个docker网络和一个kv存储(在使用swarm模式时不需要),并启动了4个服务,所有服务都连接到同一个网络
docker-machine ssh manager1 docker network create -d overlay appnet
docker-machine ssh manager1 docker service create --name redis --network appnet redis:3.0.7-alpine
docker-machine ssh manager1 docker service create --name mongo --network appnet mongo:3.2
...
但将这些服务分组(同样,在同一个群集中)的“群模式”方式是通过,如“.”所示。它用于将现有docker compose文件转换为dab。
注意:捆绑包在docker 1.12中仍处于试验阶段。感谢分享这些链接。Swarm服务和捆绑包在自动化方面看起来很有前景。但是,我有一个问题-如果我的所有节点都是单个群集的一部分,我如何控制将哪个服务部署到哪个节点?示例-MySQL服务应该只转到DB节点。您应该能够在environment部分中定义关联性(至少在版本2文件中是这样,它可能已更改,因此请参阅有关为您的配置文件版本配置关联性的文档)@PatrickCornelissen我在当前版本的docker中看不到affinity:container了。看到雷尔扎的答案了吗