从我读到的内容看来,Docker-Compose 是一个在单个主机上创建多个容器的工具,而 Docker Swarm 是一个可以做完全相同的事情但在 Docker Stack 的帮助下在多个主机上进行更多控制的工具。我浏览了教程,也遇到了这个线程:
docker-compose.yml vs docker-stack.yml 有什么区别?
我得出的结论是,当您可以将 Docker Swarm 与 Docker Stack 一起使用时,就没有理由使用 Docker-Compose。他们甚至可以使用相同的 docker-compose.yml。
似乎 Docker-compose 出现在 swarm 和 stack 之前,也许 swarm + stack 的新解决方案使 compose 过时了,但由于遗留原因,它仍然存在。这种想法正确吗?如果不是,Docker-Compose 在开发或生产环境方面比 Docker Swarm 和 Docker Stack 有什么好处?