Managing Research Workflows with Singularity Containers


Norlin E206

Title: “Managing Research Workflows with Singularity Containers”
Instructors: Andrew Monaghan
Location: Norlin E206  (20 students maximum + Zoom students)              
Modules: 2 modules @ 2 hours each
Module 1: 17 April, 10:00a-12:00p (Norlin E206)
Module 2: 24 April, 10:00a-12:00p (Norlin E206)
Participant Feedback Survey:
           - some knowledge of Linux;
              - a computer with the following installed:
                     a Secure Shell (SSH) client (you already have this if you use Linux or Mac; if you use Windows contact for assistance);
                                  For Linux:
                                  For Mac:
                                  For Windows:
Overview: A container is an image that includes everything needed to run one or more pieces of software: the code itself, an operating system environment and its associated tools and libraries, and other desired customizations. Containers are “stand-alone”, enabling workflows to be easily packaged and shared across platforms. They enhance reproducibility and negate the need to recompile workflows when porting to different computing environments.  Singularity is an open-source containerization software that is well-suited for porting and scaling workflows for high performance computing (HPC) applications, and additionally it can bootstrap containers from Docker, another popular containerization software. 
Module 1 will introduce users to Singularity and teach them to build new images (containers), bootstrap existing images from Singularity Hub and Docker Hub (created by other users), and modify images.  In Module 2, users will learn how to port containers to the RMACC Summit supercomputer and run them in an HPC environment, including parallel (multi-core) examples. Users need not take Module 2 if they do not have interest in the HPC applications of containerization.  However, those who wish to take Module 2 should also take Module 1.