Create a swarm
(Make sure the Docker Engine daemon is started on the host machines)
Step1:Open a terminal and ssh into the machine 
where you want to run your manager node.
Step2:$docker swarm init --advertise-addr 192.168.99.100
To add a worker to this swarm, run the following command:
docker swarm join \
--token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx\
192.168.99.100:2377 
To add a manager to this swarm, 
run "docker swarm join-token manager" and follow the instructions.
Step3:Run docker info to view the current state of the swarm:$ docker info
Step4:Run the docker node ls command to view information about nodes:
$ docker node ls
Add nodes to the swarm 
(Once you've created a swarm with a manager node,
 you're ready to add worker nodes)
Step5: Open a terminal and ssh into the machine 
       where you want to run a worker node
Step6: create a worker node joined to the existing swarm 
$ docker swarm join\ 
--token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx\
192.168.99.100:2377
If you don't have the command available, 
you can run the following command
on a manager node to retrieve the join command for a worker:
$ docker swarm join-token worker
Step7: Open a terminal and ssh into the machine
       where you want to run a second worker node[worker2]
Step8: $ docker swarm join\ 
--token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0\ 
192.168.99.100:2377
Step9:Open a terminal and ssh into the machine where the manager node runs.
$ docker node ls
ID              HOSTNAME STATUS   AVAILABILITY MANAGER
03g1y59jwfg7    worker2  Ready    Active
9j68exjopxe7    worker1  Ready    Active
dxn1zf6l61qs *  manager1 Ready    Active       Leader
Deploy a service to the swarm  
(After you create a swarm, you can deploy a service to the swarm. 
For this tutorial, you also added worker nodes, 
but that is not a requirement to deploy a service)
Step1:Open a terminal and ssh into the machine where you run your manager node
Step2:$ docker service create --replicas 1 --name helloworld alpine ping docker.com
Step3:$ docker service ls //shows the list of running services
Inspect a service on the swarm 
(When you have deployed a service to your swarm,
you can use the Docker CLI to see details about the service running in the swarm)
Step1:If you haven't already,
      open a terminal and ssh into the machine where you run your manager node
Step2:$docker service inspect --pretty helloworld 
      //display the details about a service
Step3:Run docker service ps  to see which nodes are running the service:
$docker service ps helloworld
Step4:$ docker ps 
Scale the service in the swarm 
(Once you have deployed a service to a swarm, you are ready to use the Docker 
CLI to scale the number of service ps in the swarm)
Step1: If you haven't already,
       open a terminal and ssh into the machine where you run your manager node
         $docker service scale =
  $docker service scale helloworld=5
Step2:  Run docker service ps  to see the updated task list:
 $ docker service ps helloworld
Step3: Run docker ps to see the containers running on the node.
Delete the service running on the swarm 
Step1: If you havent already,
      open a terminal and ssh into the machine where you run your manager node 
       $docker service rm helloworld
Step2: Run docker service inspect  
       to verify that the swarm manager removed the service:
       $docker service inspect helloworld