View on GitHub

Containers for HPC

Repository for participants of the "Containers for HPC" training

Apptainer, previously known as Singularity, can be viewed as Docker for HPC: an image can contain the operating system and 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 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.

Learning outcomes

When you complete this training you will be able to

Schedule

Total duration: 3 hours.

Subject Duration
introduction and motivation 15 min.
Apptainer definition files 75 min.
coffee break 15 min.
Apptainer and parallel applications 15 min.
Apptainer and services 20 min.
hands-on 30 min.
wrap up 10 min.

Training materials

Slides are available in the GitHub repository, as well as example container definition files.

Target audience

This training is for you if you have non-trivial workflows on HPC systems or reproducibility requirements and want to use containers effectively.

Prerequisites

You should be comfortable using Linux and the HPC environment. If necessary, attend the appropriate training sessions on those subjects first.

More concretely, participants should already be comfortable with the following:

Familiarity with Docker concepts is helpful, but not strictly required. You do not need prior experience with Apptainer or Singularity, container definition files, multi-stage builds, or HPC-oriented container tools such as hpccm. Those are part of the training itself.

Quick self-assessment

If you can do most of the tasks below without looking up basic Linux or HPC syntax, you are likely ready for this training.

If several of these items still feel difficult, the training will probably move too fast. In that case, it is better to first refresh Linux command-line use and basic HPC job handling.

Software and access requirements

To follow along hands-on, you need

Level of the Material

For participants who already have basic Linux and HPC experience, the material in this training is approximately

These percentages describe the level of the container and reproducibility topics covered in the training, not the required entry level in Linux or HPC usage itself.

Trainer(s)