What’s in it for you to start using containers in your technology? That’s what you will find out from this post. First, let’s take a step back and define our terms.
What Is a Container?
The first image that comes to mind might be a shipping container on an ocean-going freighter. That is not a bad place to start, but it needs some development. Here is Techcrunch’s definition of the term:
Instead of shipping around a full operating system and your software (and maybe the software that your software depends on), you simply pack your code and its dependencies into a container that can then run anywhere — and because they are usually pretty small, you can pack lots of containers onto a single computer.
Fundamentally, you can see containers as a way to improve productivity. Like most technologies, there are multiple vendors offering container solutions.
What Is Containerization?
Let’s look at the definition from Techopedia:
Containerization is a type of virtualization strategy that emerged as an alternative to traditional hypervisor-based virtualization. As with the latter, container-based virtualization involves creating specific virtual pieces of hardware infrastructure, but unlike the traditional approach, which fully splits these virtual machines from the rest of the architecture, containerization just creates separate containers at the operating system level.
Now that we are all on the same page, let’s dive into the benefits of using containers at your company.
Introducing the Benefits of Containers
1) Reduce bring your own device (BYOD) risk
To make life easier for employees, many companies provide support for BYOD. For the IT department, this policy poses a concern. How can you ensure that sensitive company data is protected when it is accessed on a non-company owned device? Using containers offer a way to segregate data and reduce the vulnerability to hacking.
2) Stretch your storage budget further
Whether you have an in-house data center or use a cloud service, your computing budget has limitations. Instead of paying to set up a new virtual machine as you expand, a container offers a streamlined solution. A container may require less than 100 MB of storage. In comparison, a full virtual machine could take ten times that amount of storage.
If you are looking for a quick win with management, saving a few hundred or thousand dollars from storage budget is worth considering.
3) Save time starting the applications and services you need
We have come a long way from the bad old days when you took a coffee break after booting up your computer. Containers can speed up the process even more! Why does that matter? If you are a developer with a long list of software to test, stopping your work to wait for a virtual machine to boot up is frustrating.
Let’s make a quick comparison of the time savings:
You need to carry out ten different tests per day in different environments. With virtual machines, you may have to wait 2-3 minutes for each machine to start. That is at least 20 minutes per day or an hour lost per week. Ouch! With a container approach, you can start up a container application in seconds. Saving that time in testing adds up. It might just mean the difference between shipping a new feature on time and missing that deadline.
4) Get more value from your Google Cloud
As a leading cloud service, it is no surprise that Google Cloud supports containers. Developers need consistent testing environments. Without that, valuable time will be lost debugging problems that have nothing to do with your project. Using containers in Google Cloud gives you that consistent environment for developers.
What if you are not using Google Cloud? We have highlighted them as an example. Other cloud providers — like Amazon (e.g., Amazon Container Services and Amazon Elastic Container Service) — also support containers. It is quickly becoming an industry standard. Check with your cloud provider to see what container options they have.
5) Support Netflix levels of growth
Is your company rapidly growing? Do you have millions of users accessing your applications every day? In that case, take a page from the Netflix technology playbook. With a huge amount of data to serve, roadblocks add up. That is why Netflix started using containers in 2015 to test new features and improve productivity. Saving time during development is just the tip of the iceberg.
By adopting containers, Netflix improved the user experience for its products. Think of it as applying “watertight compartments” to your infrastructure. A failure in one container will not crash the entire organization.
If your organization has public-facing technology — especially software as a service — there is considerable merit in using containers.
6) Eliminate tedious tasks for your technology professionals
There’s no way to get around this fact: there is hot competition for technology talent! In addition to competitive compensation and career opportunities, technology professionals like to work on the latest and greatest technology. If they spend time on repetitive tasks to set up new virtual machines before they can do their work, they may become discouraged. This kind of dull work may just push your technologists to accept a call from a recruiter.
7) Achieve cost savings in production
According to a CSO article, only 39% of companies are using containers in production environments. In comparison, over 70 percent of companies are using containers in test environments. To optimize your technology budget, work on full implementation. You can start a pilot project by implementing containers for your testing work. Once that implementation takes off, expand containers to your production environments.
Maintaining Cybersecurity While You Innovate
There are productivity and performance benefits to adopting containers. However, there’s one critical point we have not covered yet. What security risks will containers bring to your organization? A full assessment is the beyond the scope of this article. At a minimum, make sure your access governance systems and controls apply to containers. Even better, use our Identity-as-a-Container (IDaaC) Platform to improve your cybersecurity by preventing your data from being commingled with that of other organizations. After all, if a hacker or disgruntled employee gains access to your containers, the consequences could be dire.