/ Cloud

Docker

Docker

If you think you already know all about virtualization, well you should have a look on this...
As you may know, there are virtualization technologies such as VMware, VirtualBox and KVM, those technologies allow us to create Virtual machines that run on top of physical hardware, So we can create VM's for different purposes, capabilities and functionalities, and that was actually a big step in technology and everyone is happy with it....

But if you think twice maybe you don't really need an entire operative system to run just an small application, and from the sysadmin point of view, there is no reason to have the overhead to virtualize an entire virtual vachine to run a L.A.M.P server, just to give you a quick example, and there is when docker comes in the game.

Sysadmins vs DevOps the war has just begun...

docker_logo

Docker it's a virtualization technology using Linux containers, let's say Docker use resource isolation of the Linux kernel (Cgroups and Kernel namespaces) So you can have multiple containers running on a single server, and those "containers" avoid the overhead of running an entire operative system, encapsulating functionalities or personalities, :)

In a real world use case, suppose your are a developer and you want to test your app on several different linux distributions, what normally you need to do is virtualize the whole operative systems and test the application on each server, that is time and resource consuming, there are a lot of aplications/use cases where docker can save the day.

From Docker.com

"Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications. Consisting of Docker Engine, a portable, lightweight runtime and packaging tool, and Docker Hub, a cloud service for sharing applications and automating workflows, Docker enables apps to be quickly assembled from components and eliminates the friction between development, QA, and production environments. As a result, IT can ship faster and run the same app, unchanged, on laptops, data center VMs, and any cloud."

Docker_arch

There is a docker registry which is an OS image respositorie, basically a bunch of images ready to use by docker
https://registry.hub.docker.com/
on your hardware, that simple.

Docker was created by Solomon Hykes just two years a go... It is really crazy how new opensource projects are growing so quickly,
I'll be posting more about the use of docker in a much more detailed technical way.