DevOps Classroomnotes 25/Nov/2022

Docker networking contd..

  • Lets look at the following scenario
  • As number of Docker Hosts increase the complexity of running containers becomes difficult to manage.
  • A container in one host (srv1) trying to connect to container in other host (srv3) is not possible with bridge network
  • Failure scenarios:
    • What happens if the srv1 is down
    • What happens when a container in srv1 is down
  • Performing the above actions are tedious.
  • Lets just think of networking perspective, docker has a mode called as swarm which enables multi-host docker networking and also it gives orchestration features.


Docker Swarm

  • Overview
  • Refer Here for the blog
  • Refer Here for the networking and interfaces
  • All the nodes should be reachable to each other
  • docker should be installed on all the nodes
  • Create two linux servers and install docker in it
  • Select any linux server (node-1 – powershell in images) and initialize swarm
qtdevops@dockernode-1:~$ docker swarm init --advertise-addr ""
Swarm initialized: current node (qo5x9l0pngi8k20zeisrv5lc9) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join --token SWMTKN-1-3prx9d5k19977wurpimwl1v0ufon8e22u6uns3s3d38aa4c3rx-9stw2ke6ytpwutuggn1zb0kn3

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
  • On the manager two extra docker networks will be created
  • Pictorial reprsentation
  • Now execute docker swarm join command on the node-2
  • Lets look at networks
  • Communication from one to other container will look as shown below
  • Lets see the list of nodes in docker swarm manager
  • Lets create a service of nginx
docker service create --replicas 2 --name nginx-srv nginx


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

About continuous learner

devops & cloud enthusiastic learner