运行docker compose,它为数据库应用程序组成了几个容器,并且在docker swarm集群上登录,使得所有这些容器都在docker swarm的每个节点上运行。但我们需要的是传播它,例如我有4个节点,其中3个需要运行副本集和第四个应用程序。 我怎么可以使用docker compose和swarm呢?或者可能需要一些其他工具。
答案 0 :(得分:2)
要在不同的节点上运行,您需要使用docker 1.9,swarm 1.0和compose 1.5版本中的新docker网络。
如果您使用的是每个节点的最新版本,则可以在每个节点上设置节点标签,并使用swarm constraints在特定节点上放置特定服务。
使用compose 1.5.0,您需要使用--x-networking
选项启用多主机网络。
答案 1 :(得分:0)
现在,使用docker-swarm
创建Docker多主机网络的正确方法是通过overlay
网络驱动程序。
基本上,您使用docker-swarm
创建具有多个节点的群集,并配置群集群集以支持使用overlay
驱动程序的多主机网络。
使用swarm cluster
设置overlay driver
后,您或docker-compose
将能够通过多个节点传播您的容器。
不幸的是,覆盖网络需要一些预先存在的条件才能创建一个,请在此处查看更多详细信息:
Get started with multi-host networking
经过测试:
注意:不推荐使用编写器标志--x-networking
,并且版本1.6或更高版本不再存在此标志。