Docker provides a completely open platform for developing distributed applications. Customers turn to Docker to build, run, and deploy, portable cloud ready applications. Docker is a tool that can package an application and its dependencies in a virtual container that can run on any Linux server. Docker uses the resource isolation features of the Linux kernel such as groups and kernel name spaces, and a union-capable file system such as aufs and others to allow independent "containers" to run within a single Linux instance, avoiding the overhead of starting and maintaining virtual machines.