Introduction to Singularity

Singularity is a container platform. It allows you to create and run containers that package up pieces of software in a way that is portable and reproducible. You can build a container using Singularity on your laptop, and then run it on many of the largest HPC clusters in the world, local university or company clusters, a single server, in the cloud, or on a workstation down the hall. Your container is a single file, and you don’t have to worry about how to install all the software you need on each different operating system.

This training explains what is Singularity, why it is a useful tool, and how we can use it:

  • Training presentation (pdf)
  • Training video

Course Content

  • Introduction
  • Basic Singularity image - sandbox
  • Usage on cluster
  • Parallelization – MPI
  • Other aspects GPU, overlay
  • Conclusion

Basis Commands

Command Description
singularity help To see list of all commands and descriptions
singularity build Create a basic container
singularity pull Pull an image from a URI
singularity shell Enter the shell
singularity run Run a Singularity Image File (sif)
singularity exec Run a command within the container

More Resources