Containerization
Recall that there is a third way by which we handle package management on Luria: containerization. Similar to Environment Modules and Conda environments, containerization is a way of packaging an environment into a container such that it contains the absolute bare minimum needed to run a specific set of software. Containers can be thought of as a very stripped down operating systems packaged into a little box, although that is not what they are.
Containers have their own filesystem where the software runs, and it is a snapshot of the filesystem needed for a piece of software to run. Therefore, if a container can run a piece of software now, it should be able to do so always.
Since a containerized application contains everything it needs in order to run, it is very easy to share containers with people so that they can easily run software.
Container pros:
Portable
Shareable
Consistent
Popular container engines:
Docker
Singularity
Last updated