Scaling up Compose-based service
In this recipe, we will scale up our service, which we created in the recipe, Using Docker Compose to manage a service. Scaling up a Compose-based service simply means adding more containers for a particular service defined in docker-compose.yml
. We will be using Ansible to scale the web service of an application. Before we jump further into this topic and scale a web service, we should understand the concept of load balancers. Usually, web applications that are horizontally scalable like ours (our web service) need a load balancer to distribute requests among all instances of the application. In our example, we have not yet created a load balancer, so we need to create a load balancer using a Docker Hub image.
How to do it…
- Let's add a load balancer, links, and a network in
docker-compose.yml
:
version: '2' services: web: build: ports: - "5000" networks: - l1-tier - l2-tier redis: image: "redis:alpine" links: ...