Virtualization industry is bringing up many interesting and yet useful products in the market to reduce the IT cost. VMware revolution demonstrated that how to utilize the hardware effectively using hypervisor and other sibling products. Similarly openstack development also going on aggressive pace to reduce the virtualization product cost by utilizing opensource technologies. Docker was no where in the competition but suddenly it created buzz in the IT industry. Docker concept is opposite to other existing hypervisor based virtualization technologies. Docker allows you to package an application with all of its dependencies into a standardized unit for software development.
Docker containers wrap up a piece of software in a complete filesystem that contains everything it needs to run: code, run-time, system tools, system libraries – anything you can install on a server. This guarantees that it will always run the same, regardless of the environment it is running in.
Let’s have a look at the docker architecture.
Docker Engine (daemon) runs on the docker host along with docker client. Docker client is used to launch the docker container . Container is nothing but a ready-made image which is available in docker repository. There are 14k applications are readily available in docker repository.
How it is different from hardware virtualization ?
There are two type of Hardware virtualization exists in the market .
- Electrically partitioning the system
- Hyper-visor based virtualization.
Electrically Partitioning Hardware: (Hart Partitions)
- Oracle – Dynamic Domains
- HP – N-Par
Hyper-visor Based virtualization: (Soft Partitions)
- Oracle – LDOM
- IBM LPAR
- HP UX- IVM
- VMware ESXi
Let’s see that how Docker is different from the Hyper-visor based virtualization.
VMware vSphere vs Docker
If you compare the above image , we can see that docker engine is replacing the hypervisor layer. Docker engine shares the kernel with container and you no need to create the additional Guest OS layer unlike VMware. This is similar to oracle Solaris zones and Linux container (lxc) but not exactly same.
Sharing the Binary and Libraries :
Adding to that Docker also shares the Bins/Libs across the container.
Moving container across the cloud:
Docker engines provides the portability across all the platform. This flexibility allows us to move the container from one cloud to another cloud.
In the upcoming articles , we will explore more about docker deployment and migration.Follow us on Social networks to get regular updates.