What is containerization and why should I use it?

February 8, 2023Author: Matt Compton

If you follow technology news at all, you’ve probably read headlines about virtual machines, containers, Docker, and others quite a lot. But what do all these terms really mean, and how can you make containers work for you?

What are Virtual Machines?

To understand containerization, we first need to understand virtual machines. Because of the massive increase in available computing power, it’s been possible to create entire systems inside of existing physical hardware. This allows for better utilization of the physical hardware. The primary reason that companies adopted virtual machines was to enable them to make better use of existing hardware. Additionally, it allowed companies to safely separate different parts of their services, or even to rent out excess resources to other companies.

What is a Container?

Fundamentally, containers are similar to virtual machines in that they allow a single physical system to run many concurrent tasks that traditionally would occupy one physical machine. However, containers strip out all data that isn’t needed for their specific task —like running a web server— in order to reduce disk space. The operating system that they run is a hybrid, sharing most core components with the physical system hosting it.

On the left side, you can see an example of how your organization’s processes might look if fully containerized. On the right, is an example with full virtualization. 

Examples of Containerized Apps

For a home user, or someone running minimal services for themselves and their friends, it might not initially seem like containers are super beneficial. However, even something as straightforward as a Minecraft server could benefit from being containerized, especially if the specific version being run needs specific programs, like an older Java version. Another use case for a home server operator might be a program that needs to be segmented from the rest of the system, such as a password manager.

Let’s refocus on apps developed by large companies. On the surface, they usually seem to be one cohesive unit. Under the hood, this is almost never true. Take, for example, this diagram of a made-up app. Depending on the status of each given container, the path taken to create the interface for the end user can differ. This also is what powers the increased reliability of containerized services.

Of course, not every workflow ends in something being served to an end user. This is just a simple example to illustrate how containers can improve reliability through the parallelization of processes.

Why Should I Containerize?

There are a variety of things to consider when deciding if containerization is right for you. 




Containerization is an exciting new approach to managed services, but deciding for sure if it’s appropriate for a given situation is, in the end, a case-by-case topic. Most organizations will likely be able to achieve it, but depending on their needs the time and cost of doing so could vary greatly.  


Stay up to date with Twitter, Instagram, Facebook, and LinkedIn so you always know what we’re up to!