Technology | Virtual Machines

Docker Containers vs Virtual Machines

Words by Martin Kelman
Docker Containers vs Virtual Machines
What is a Docker container?

Here’s what Docker says, “A Docker container is a standard unit of software that packages up code and all its dependencies, so the application runs quickly and reliably from one computing environment to another.”

Why do we use containers?

The need for efficiency of the use of computer is why in 1964 IBM began to explore the concept of virtualisation on mainframe computers. It took until 1999 until VMware was launched into the PC consumer and industrial market.

I remember the first time I came across VMs and the concept that you could run one or more computer operating systems on a single computer hardware blew my mind. The separation of the physical into the virtual had begun and the first digital twin of a digital entity had been created.

Humans are very good at going from ‘mind blowing’ to ‘normal’ to ‘why can’t it do this?’ in one move. From 2000 to 2010, computer virtualisation became commonplace and various operating systems including Linux started to support such functionality. Linux went a step further and introduced the concept of containers and Docker and Kubernetes have captured the imagination software developers and IT architects ever since.

At Atlas, both our enterprise services and our SaaS products are based on Docker and Kubernetes. Atlas Edge is especially focused on using these technologies to help deliver the power of edge computing.

What’s the difference between containers and VMs?

Apart from the funky Docker and Kubernetes logos, the main difference between Virtual Machines and containers is the hosting footprint. VMs still require one operation system and kernel to host the apps and services. Whereas, multiple containers can be hosted on a single operating system and kernel.

This is where the term “Spin-up” comes from. It points out that VMs are slow at starting and slow at responding to user dependencies, where containers are lightweight, agile, high preforming and they can spin up or spin down in an instant. They are capable of optimising the computing hardware on which everything sits.

If you want to be in with the IT Crowd, just throw in the odd “Spin-up” into any conversation.