Docker在单个主机上扩展容器

我可以理解在集装箱分布在多个物理主机服务器上的docker群中扩展容器(作为服务)的优点,但是在单个物理主机上扩展容器(不使用群集)还有其他优点,如果是这样的话他们是什么?

docker-compose scale apache=4 

您可以在Martin Villalba的“ Docker Compose:扩展多容器应用程序 ”中看到单主机服务扩展的示例

在这种情况下你需要小心的是:

确保我们要扩展的服务不指定外部/主机端口。 如果我们指定该端口,则服务将无法缩放,因为所有实例都将尝试使用相同的主机端口。

在那篇文章中,.Net Web应用程序在多个容器中扩展,并通过负载均衡器到达。

即使在单个物理主机上,也能够更好地分配和划分不同容器之间的物理机器的资源。 如果其中一个容器出现故障,另一个容器仍然可以提供预期的服务。


OP paj指出他的文章“ 使用NGINX的Docker单声道主机服务扩展和dynamic负载平衡 ”来说明这一点。

在单个主机上扩展多个容器中的服务是否有任何好处?

那么,是的,因为您仍然可以将stream量负载平衡到您的应用程序,并实现基本级别的容器弹性。

他使用允许dynamic更新NGINX上游主机configuration的NGiNX http_dyups_module。