我们有许多应用程序,并且基于它们的相互依赖性将它们分为两个应用程序。我们已经为所有这些应用程序配置了以SWARM模式运行的Docker。 由于大约有29个应用程序正在运行,因此更新任何应用程序的堆栈文件都变得至关重要,而且很多人都在覆盖其他更改。
我们要保留两个堆栈文件,它们应以群集模式在同一服务器上运行。 所以第一个问题是-可能吗? 是的,那么任何人都可以帮助您进行配置吗?
答案 0 :(得分:1)
您是否使用docker-compose
?是的,具有多个具有不同服务的撰写文件是完全可以的。您可以
docker-compose stack deploy --compose-file docker-compose.blaablaa.yml [stack]
一起单独部署或者如果它们相互依赖或包含每个堆栈需要的内容的通用撰写文件,则可以执行类似的操作
docker-compose -f docker-compose.yml -f docker-compose.stack1.yml config > docker-compose.stack.yml
docker stack deploy -c docker-compose.stack.yml
答案 1 :(得分:0)
我有一个答案,但忘了发布。 一个可以有多达堆栈文件,例如group1-stack.yml,group2-stack.yml,... (文件可以有任何名称) 仅当在堆栈上执行某些操作时引用文件时,才使用这些文件。
docker stack deploy -c <fileName> <stackname>
因此,一个人可以将所有相关的应用程序分组为多达yml个文件,并且一次可以使用一个文件在堆栈上进行部署/ rm等操作。