在docker swarm模式下,您可以使用以下命令部署版本3的yml文件:
docker stack deploy -c docker-compose.yml $your_stack_name
v3语法删除了一些不适用于群体模式的功能,例如链接和依赖项。您还应该注意,默认情况下,卷存储在节点本地。否则,v3语法与您可能已经在使用的v2语法非常相似。请参阅以下ether以获取更多详细信息:
https://docs.docker.com/compose/compose-
file/
https://docs.docker.com/engine/swarm/
[docker-compose.yml v3之前的原始答案]
为了将单个docker-
compose.yml部署到多个主机,您需要使用独立的群集(不是较新的群集模式,但是,这种模式正在迅速改变)。启动一个具有将每个主机定义为其群集成员的群集管理器,然后可以在docker-
compose.yml中使用约束来定义哪些服务在哪些主机上运行。
您还可以将docker-compose.yml拆分为多个文件,每个主机一个,然后运行多个docker-compose
up命令,并为每个命令定义不同的DOCKER_HOST值。
在这两种情况下,您都需要配置docker安装程序以侦听网络,这应该通过在这些套接字上配置TLS来完成。本文档描述了您需要执行的操作。



