What exactly is the difference between having multiple docker machines in a swarm (a manager and many nodes) and having multiple replicas of a docker service in a swarm?
What is the difference between using Docker Machine with Swarm and using Swarm through the Docker daemon?
3.5k views Asked by Alexander George AtThere are 2 answers
Docker Machine is a tool for provisioning and managing your Dockerized hosts (hosts with Docker Engine on them). Typically, you install Docker Machine on your local system. Docker Machine has its own command line client docker-machine and the Docker Engine client, docker. You can use Machine to install Docker Engine on one or more virtual systems. These virtual systems can be local (as when you use Machine to install and run Docker Engine in VirtualBox on Mac or Windows) or remote (as when you use Machine to provision Dockerized hosts on cloud providers). The Dockerized hosts themselves can be thought of, and are sometimes referred to as, managed “machines”.
Docker Machine: Tool for provisioning and managing docker hosts (virtual hosts running docker engine). It automatically creates hosts, installs Docker Engine on them, then configures the docker clients. You can use Machine to create Docker hosts on your local machine using a virtualization software like VirtualBox or VMWare Fusion. Docker machine also supports various cloud providers like AWS, Azure, Digital Ocean, Google Compute Engine, OpenStack, RackSpace etc.
Docker Swarm: A swarm is a group of docker hosts linked together into a cluster. The swarm cluster consists of a swarm manager and a set of workers. You interact with the cluster by executing commands on the swarm manager. With swarm, you can deploy and scale your applications to multiple hosts. Swarm helps with managing, scaling, networking, service discovery, and load balancing between the nodes in the cluster.
https://www.callicoder.com/docker-machine-swarm-stack-golang-example/
Well, since nobody answered this, I carried on reading more on the Internet trying to understand what's the difference between this two concepts. This is what I understand so far:
I hope this helps.