Docker & Containers Technology
Virtualisation is the process of running virtual instances of computer systems, abstracted from the actual underlying hardware. You can have multiple Operating Systems (OS) running simultaneously on single hardware where each OS is a virtual instance isolated from other. These OSs are termed as virtual machines (VM) which can be stored as an instance for backup, used for software testing in various environments, migrated to another location altogether.
Example: An enterprise server OS crashes along with the hardware. As the OS was a VM, the system administrator of the enterprise easily picks-up its backup VM (VMs are stored as image files — a snapshot of the original instance) and deploys it on other working hardware in minutes.
VM creates a whole OS. But we can also create virtualised application packages that can run on different platforms same as a VM does irrespective of platform, using ‘Docker and Containers’.
What is Docker?
Docker is an open source ecosystem of tools to create, manage and deploy applications for any platform. The general idea is to create applications, package them together into containers and ship them for deployment. Docker is a virtualisation technology. It allows applications to use the OS of the computer on which it is deployed (Client) and ships only that parts of the application (that is, the libraries, dependencies, supporting applications, etc.) that are not available on the Client. With the help of docker, we create containers containing applications that are consistent irrespective of the platform. Docker is available for the Linux, Windows and Mac environment.