Singularity is an open source container platform designed to be simple, fast, and secure. It allows unprivileged users to run untrusted containers in a trusted way. It has been designed with reproducability and HPC workloads in mind.
Singularity can be loaded with the following command:
module load apps/singularity
We provide small selection of pre-built containers, which can be
/opt/apps/containers/ directory on the cluster. The definition
files used to build those containers can be found in our
You can also download containers using
singularity pull command from
the Singularity Container Library
singularity pull library://sylabsed/examples/lolcow
or from the Docker Hub
singularity pull docker://godlovedc/lolcow
Alternatively you can build your own containers. Please see the Singularity documentation for more information.
Using third party containers is a great way to get started, but you need to make sure that the container is behaving as expected before using it in your work.
module load apps/singularity singularity run ./container.sif
execute a command
module load apps/singularity singularity exec ./container.sif python hello.py
or start a shell
module load apps/singularity singularity shell ./container.sif Singularity container.sif:~>