Running Docker Swarm in the cloud

Docker has a minimal set of infrastructure requirements, so you can easily spin up a Docker host or a clustered Docker Swarm in any cloud. All you need to run Windows containers at scale is the capacity to run Windows Server virtual machines and connect them on a network.

The cloud is a great place to run Docker, and Docker is a great way to move to the cloud. Docker gives you the power of a modern application platform, without the restrictions of a Platform as a Service (PaaS) product. PaaS options typically have proprietary deployment systems, proprietary integrations in your code, and the developer experience will not use the same runtime.

Docker lets you package your applications and define your solution structure in a portable way that will run the same way on any machine and on any cloud. You can use basic Infrastructure as a Service (IaaS) services, which all cloud providers support, and have a consistent deployment, management, and runtime experience in every environment.

The major clouds also provide managed container services, but these have centralized on Kubernetes—AKS on Azure, EKS on Amazon Web Services, and GKE on Google Cloud. At the time of writing, they're all 100% Linux offerings. Windows support for Kubernetes is being actively worked on, and the cloud services will begin to offer Windows once it's supported, but Kubernetes is a far more complex orchestrator than swarm, and I won't cover it here.

One of the simplest ways to deploy Docker Swarm in the cloud is to use Terraform, which is a powerful Infrastructure-as-Code (IaC) technology that's typically much easier to use than the cloud providers' own templating language or scripting tools. With a few dozens lines of configuration, you can define VMs for the manager and worker nodes, along with the networking setup, load balancers, and any other services you need.

..................Content has been hidden....................

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