Want another argument in favor of containers? Consider their importance for helping DevOps teams to shift the delivery pipeline to the left. Here’s how containers help in the shift-left process.
The concept, which has become increasingly popular in DevOps circles in recent years, refers to the practice of shifting processes “to the left” of the delivery pipeline—in other words, performing them earlier.
Shift-left workflows originated in the context of software testing. By performing software tests earlier in the delivery cycle, organizations can find bugs at a time when they are easier and less costly to fix.
The shift-left mentality doesn’t have to end with software testing, however. The same practices can be applied to security (which is best performed starting early in the delivery pipeline, rather than waiting until production), monitoring and alerting (which are also valuable in pre-production stages of the delivery chain) and virtually every other process that occurs when delivering software.
Containers and Shift-Left Delivery Strategies
On the surface, containers may not seem to have much to do with shift-left testing, security or anything else.
Containers are an infrastructure technology, and shifting left is a process.
Yet, containers can play a crucial role in facilitating a shift-left approach to software delivery. Containers help in the following ways:
- Providing environment parity at all stages of the delivery pipeline. Environment parity makes it easier to perform processes early in the delivery chain without worrying about how differences in the software environment might affect those processes later.
- Reducing the amount of software on which a shift-left process needs to be performed. Because containers essentially take the operating system and most environment variables out of the picture, they allow people who are testing, monitoring, securing or otherwise working with an application to focus on just the application. This makes shift-left processes easier to implement because it reduces the amount of overhead that you have to deal with to perform your process.
- Making the timing software delivery processes flexible. Containers can be spun up quickly with minimal configuration. This feature makes it easy to perform a process at any stage of the delivery chain, without having to spend much time setting up the process or moving it to a different stage of the delivery chain. This would not be the case if moving the process required creating a new virtual machine or reconfiguring various tools.
In each of these ways, containers make life easier for DevOps teams that have embraced a shift-left mentality.
Containers aren’t the only way to do shift-left software delivery, of course. Nor will containers alone enable you to move everything to the left. You’ll also need to rethink your processes.
But containers can make shift-left delivery easier and faster in many respects.