Mythbusting Docker
Dan Griffith
Six busted myths that prove the
containerized future is closer than you think.
This year Docker containers have managed to claim
the mantle of “most-hyped technology.”
However, this hype has not led to the IT community’s
universal acceptance of Docker containers as the
Next Big Thing; far from it. In defiance of the classic
Gartner hype cycle sequence, the container discus-
sion has seemingly jumped straight from the technol-
ogy trigger to the trough of disillusionment, alto-
gether bypassing inflated expectations. It seems that
each day brings a new critical appraisal of containers
in general, and Docker in particular. These critiques
often focus on the supposedly stark contrast between
Docker container technology’s potential and its
immaturity and unreadiness for actual production
use.
Experience in the engineering trenches with Docker
has given me quite a different perspective on the cur-
rent and future state of containers. I readily concede
that Docker containers are a relatively untested tech-
nology, and that major functional gaps in networking,
storage, and security must be bridged in order for
containers to become a mainline infrastructure com-
ponent. However, I will argue that mainstream accep-
tance and widespread use of containers are closer
than most people think, and that containers are
already well on their way to becoming ubiquitous.
This discussion highlights and “busts” commonly
believed myths about Docker and containerization.
40 | THE DOPPLER | WINTER 2016
Myth 1: Docker Containers Are Best
Understood as Small VMs
Like many IT professionals with extensive virtualiza-
tion experience, the concept of Docker containers as
virtual machine “mini-me’s” was a logical first frame
of reference. The equivalence of containers and vir-
tual machines is a simple, elegant, easily understood,
and absolutely wrong construct. In fact, Docker
architects make sure to debunk this idea during
bootstrap training sessions, stating baldly that con-
tainers are not virtual machines, and should not be
treated like them. Docker containers do serve the
same purpose as vms, presenting a subset of
resources like compute, storage, libraries, and net-
working to an application process. However, there
are key differences, especially in one area.
A virtual machine uses a full operating system run-
ning on an abstracted hardware-as-software layer,
provisioned for the application process in toto. In
contrast, a container only provisions the specific
operating system resources necessary to run its spe-
cific application process. Installing an application in a
vm first requires building and configuring a full
instance of a specific OS version on the virtual hard-
ware supplied by a specific hypervisor version. Provi-
sioning a “containerized” application basically
requires a Docker engine running on a common ker-
nel, a Docker image (instruction set), and access to
required libraries (which can be built on demand).