Why Do We Need Docker
Docker is growing and growing fast. But you may be wondering what it is and why you keep hearing about it. Lets take a look.
Most of the big IT firms, including companies like Microsoft, Oracle, and Red Hat are jumping on board and embracing Docker. But why? Well Docker is all about containers. Containers, and of course virtual machines, are all about emulating and slicing and dicing hardware. But if virtual machines can do what containers do, whats the difference.
Virtual machines are created by using processors that support hypervisors to manage them. Some run right against the hardware, whereas other have an operating system in between. Either way they use an emulation of the virtual hardware.
Containers also provide a virtual platform for applications, and allow for isolation between them. The most fundamental difference is that VMs provide an abstraction of the hardware so can run multiple OS’s, whereas containers provide an abstraction of the OS.
One of the key advantages of containers, because they abstract the OS and effectively share it, is that they then have a much lower overhead. Shared memory and disk means that a new container can be started up very quickly. For example, if you use Google Docs, Google fires up a new container instance for each user… so it has to be quick.