我可以理解在容器分布在多个物理主机服务器上的docker swarm中扩展容器(作为服务)的优点,但是在单个物理主机上扩展容器(不使用swarm)也是有利的,如果是的话,他们是什么?
docker-compose scale apache=4
答案 0 :(得分:1)
您可以在" Docker Compose: Scaling Multi-Container Applications"中看到单主机服务缩放的示例,作者:Martin Villalba
在这种情况下需要注意的地方是:
确保我们要扩展的服务不指定外部/主机端口。如果我们指定该端口,则无法扩展服务,因为所有实例都会尝试使用相同的主机端口。
在那篇文章中,.Net Web应用程序可以在多个容器中扩展,并通过负载均衡器进行扩展。
即使在单个物理主机上,也可以在不同容器之间更好地分配和划分物理机器的资源。如果其中一个容器发生故障,另一个容器仍然可以提供预期的服务。
OP paj指向他的文章" Docker Mono Host Service Scaling and Dynamic Load Balancing with NGINX"说明这一点。
在单个主机上的多个容器中扩展服务有什么好处吗?
嗯,是的,因为您仍然可以对应用程序的流量进行负载平衡,并实现基本级别的容器弹性。
他使用允许动态更新NGINX上游主机配置的NGiNX http_dyups_module。