Using Containers in Supercomputing Environment

Scientific tools often require installing different dependencies in a controlled environment. Containers allow you to logically package your application together with libraries and other dependencies, providing isolated environments for running your software services. Containerized applications can be run in an isolated runtime environment independent of the actual host environment (e.g., private data center, the public cloud, or even a developer’s personal laptop). These are recently gaining popularity as a standard way to distribute, deploy, and run services by developers and system administrators. This course will introduce the basic concepts of containers and their deployment in supercomputing environment at CSC.

Expected learning in this course

Basic understanding of containers is necessary to work with containerized scientific applications. This course will introduce the fundamentals of containers, focusing on their deployment in an HPC environment.

In this course, you will learn:

– The essential concepts of HPC containers
– The basics of building and running containers
– Deploying containerized applications

Please note: This course is aimed to be beginner-friendly and we won’t be focusing on advanced topics such as MPI and GPU. 


One should be comfortable working with the command line environment in Linux, be able to use any common editors (e.g., vi, nano, or emacs, etc.) and have some familiarity with HPC environment.

So, the ideal candidates for this course are:

– Computational scientists from any discipline
– Ones with basic Linux skills and/or basics of HPC environment

Expected way of learning

– Lectures
– Hands-on exercises

We aim to have lecture and exercise material available two weeks before the course.

Practicalities (More information will be updated here)

This is a three half-day course, from 9 AM to 12 PM

Course Program:

– Introduction to HPC
– Tykky wrapper containerisation
– Singularity/Apptainer: The basic usage and image building
– Docker basics  and its indirect use in HPC 
– Docker vs. apptainer 
– Containers in R/Jupyter (web interfaces)
– Introduction of containers in bio-workflows

Please use your official e-mail in the registration


Laxman Yetukuri and Ari-Matti Saren