Overview
Singularity is a free, cross-platform and open-source computer program that performs operating-system-level virtualization also known as containerization. One of the main uses of Singularity is to bring containers and reproducibility to scientific computing and the high-performance computing world.
Note: There are two strands of Singularity:
The original open-source version of Singularity managed by HPCng: (releases / github). This is what we are using.
And the Community Edition, forked by sylabs.io back in May 2021: SingularityCE (releases / github). They now also provide Pro and Enterprise editions.
Using
Use the module name singularity
to discover versions available and to load the application.
Note: On teton, version 2.5.2 is currently loaded by default on a session start up, so in the message above you can see the module system is changing from version 2.5.2 to 3.8.1.
Using Singularity
Due to security/user permissions a researcher is currently unable to build a Singularity container directly on the cluster. They will need to build this on their own desktop/laptop and then copy the image across onto the cluster and then run.
Alternatively:
You can try using a prebuilt contain from some where else.
Consult with ARCC on building a container that provides the environment you require. We have done this with a number of researchers to provide unique R environments with a series of pre-installed R packages.