Singularity can be viewed as the Docker for HPC, i.e., a Singularity image contains all the operating system/software components for your application and can be deployed and run on HPC infrastructure, as well as on your own laptop, and even in the cloud.
An additional advantage of Singularity containers is that they can help you create a software environment that is stable over long periods of time, which helps reproduce results in the future.
When you complete this training you will be able to
use Singularity containers;
create your own definition files for containers;
understand strengths and weaknesses of containers;
recognize and avoid potential pitfalls.
Total duration: 3 hours
Slides are available in the GitHub repository, as well as example Singularity definition files.
This training is for you if you have some non-trivial workflows on HPC systems, or reproducibility requirements.
You will need to be comfortable using Linux and the HPC environment. If necessary, attend the appropriate training sessions on those subjects.