Docker is a widely used open platform that enables developing, shipping, and running applications. Docker provides the ability to package and run an application in a loosely isolated environment called a container. Tools like Kubernetes make use of docker and make it easy for an enterprise to deploy, manage, scale and modify applications with great ease.

Docker Compose tool allows you to define the Docker container requirements in a YAML file. Using this tool users can deploy multi-container services with just one command.

Docker Swarm is a clustering solution for Docker servers which help enterprises maintain high availability of their container based applications.

Docker Stack is a tool that helps deploy and manage multi-container applications across the Docker Swarm cluster.