Containerization: The What, The Why and The How

It may seem as if containerization is the latest hip buzz word around when we talk about modernizing infrastructure and cloud. But in reality, it’s just a new term for a concept that’s been around for ages.

For those who are familiar with the concept of encapsulation – paging all programmers – basically, containerization is the same exact concept, except that the encapsulation is of the entire application and its related runtime environment. When you want to decouple the applications from the underlying infrastructure and move them across to different data center, hardware and software platforms, you need to move the application (along with the entire runtime environment that it needs) so it can run as-is on the target side. This method of packaging the application and all its pre-requisites to run is called “containerization.”

What business case do containers solve?

The most important benefits of containers include portability and scalability. Containerizing an application makes it portable and platform independent so that it can run on any hardware or software platform, and it decouples the application service from the computer, network, security policies, firewall rules and other such environment-specific configuration parameters. It also makes the application more agile and scalable, because now you can quickly and easily scale up or down as needed, along with the necessary application runtime variables. Containerization helps make sure the application configuration stays constant when deployed in a production environment, or you can clone an existing production environment configuration and bring it to a lower environment for troubleshooting and bug resolution.

How do I go about containerizing my applications?

Before we begin to start putting our applications in a container format we need to cover a couple of things. First, how and where will this container run, and secondly, how to package the application so it’s container ready.

Let’s tackle the question of how and where will the container run first. We’ve already discussed that containerizing an application makes it portable. But given that a container – which is a software logical unit – doesn’t run directly on a hardware platform, we need an OS layer in the middle that can host these containers. There are some specifically designed lightweight operating systems to address the need for hosting containers. There are also various commercially-available containers platforms out there. Depending on your choice of the underlying OS type and the container vendor, you can run containerized applications on a variety of platforms.

The second important consideration is understanding how to package the application so that it can be used by one of the container platforms. It;s prudent to say that every container platform has had its own methodologies on how to bundle an application package to deploy successfully. To minimize the differences between these packaging standards, all the major container vendors are participating in developing these specifications and updating their products to reflect the latest changes. These specifications provide a detailed walkthrough of how to bundle the application packages and their dependencies so that they can be deployed on a variety of container platforms.

Please follow and like us:


Our website uses cookies. Below, we briefly explain which cookies we use. You can choose not to allow the placement of analytical and/or marketing cookies. You can change your preferences at any time by clicking ‘Cookie Preferences’ in the footer of our website. You can also revoke or grant your permission(s) there. We store cookies to record your cookie preferences. More information about the cookies and the purposes for which specific cookies are stored, who stores these cookies (the provider), and the storage duration of cookies can be found in our Cookie Policy.

  • Altijd aan

    Our websites cannot function properly without certain cookies. These cookies are necessary for the proper functioning of the website, to comply with the law (e.g. being able to demonstrate which cookie preferences you have set) or required for the security of our systems. You cannot disable these cookies.

  • These cookies, also known as statistical cookies, enable us to further develop and improve the functionality of our website by analysing the use of the website. These cookies send information back to our data analytics tools: Google Analytics from Google LLC or Hotjar from Hotjar Ltd.

  • Marketing cookies (tracking cookies) enable us to collect information about your internet behaviour. This allows us to tailor our online marketing campaigns and web content to your interests.

Enjoy this blog? Please spread the word :)