Primary tabs

Achieving software portability using Aptainer/Singularity containers

Abstract

Have you had your computations stop working because of a software upgrade? Have you had your collaborators not being able to repeat your simulations because they are running on a different HPC system? 

Aptainer (formerly known as Singularity) is a container platform that allows to create and run applications in isolated images (also called “containers”) in a simple, portable, fast and secure manner. 

Singularity containers are an excellent tool to use to overcome many of these challenges with the additional benefit of being able to run the computational packages many years after they were created. 

During this workshop, we provide a detailed step-by-step protocol that describes how to package and use virtual environments and containers on a high-performance cluster such as those at the RCC.

We will cover:

  • Learn how to use containers for code portability and reproducibility
  • Some common containerization tools
  • How to find and run containers built by other people.
  • How to build their own container.
  • How to distribute their container online.

Objectives:

By the end of the workshop attendees will be able to:

  • Have a clear concept of containerization of software packages.
  • Retrieve an existing container and use it.
  • Create a container for a code package.
  • Share their container with other users. 

Duration: 2 hours

Level: Introductory

Prerequisites: Some familiarity with the unix command line will be helpful.

Install Docker: https://docs.docker.com/install/

Install Singularity [optional]: https://github.com/apptainer/apptainer/releases

Register

Thursday, March 7, 2024 - 14:00 to 16:00