How to do it…

  1. 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:
- web
networks:
- l2-tier
lb:
image: dockercloud/haproxy
ports:
- "5001:80"
links:
- web
networks:
- l1-tier
- l2-tier
volumes:
- /var/run/docker.sock:/var/run/docker.sock

networks:
l1-tier:
driver: bridge
l2-tier:
driver: bridge
  1. Let's run docker_service to create Docker Compose again. This will re-build new components for our compose application:
$ ansible-playbook -i localhost, docker.yml -t recipe7
  1. Let's write a task to scale the web application:
- name: Scale up web service of compose application
docker_service:
project_src: docker_compose
scale:
web: 2
tags:
- recipe8
  1. Now, verify if both web containers are serving requests:
# Lets send multiple requests
$ for i in `seq 1 10`; do curl localhost:5001; sleep 1; done
# Lets verify logs of both web service containers
$ docker logs dockercompose_web_1
$ docker logs dockercompose_web_2
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset