Docker
What is Docker ? Docker is an open source platform that enables developers to build, deploy, run, update and manage containers. Containers allow a developer to package up a application with all of the parts it needs, such as libraries and other dependencies, and ship it all out as one package.
Why use Docker?
Portability: Docker containers run without modification across any desktop, data center and cloud environment.
Lighter weight and more granular updates: multiple processes can be combined within a single container. This makes it possible to build an application that can continue running while one of its parts is taken down for an update or repair.
Automated container creation: Docker can automatically build a container based on application source code.
Container versioning: Docker can track versions of a container image, roll back to previous versions, and trace who built a version and how. It can even upload only the deltas between an existing version and a new one.
Container reuse: Existing containers can be used as base images—essentially like templates for building new containers.
Shared container libraries: Developers can access an open-source registry containing thousands of user-contributed containers.