Porting is the ability to move software from one environment to another by making minimal changes to the existing code. Unfortunately, such an arrangement is not easy to achieve when it comes to porting software from one Operating System (OS) platform to another or even among versions of a single OS. Software containers are a solution to this problem. The software and its working environment are able to be ported from platform to platform, from a laptop to a desktop or HPC environment as a unit, single and complete. The container bundles the software package, configuration files, software libraries and other binaries needed to run the software. Simply put, when you containerize a package and its dependencies, a portable platform is created. The differences in infrastructure and variations in OS releases are basically eliminated.