Containers on HPC and Cloud with Singularity

Prerequisites

You’ll need a laptop with a web browser and a terminal. See also the Setup page.

You might want to brush up on the fundamentals of the Linux Shell for HPC.

Structure

This tutorial has been designed in a modular way. Episodes can be thought as categorised as follows:

Once you’ve gone through Episodes 1-5, there are almost no further dependencies. You can go on and pick whichever you are interested in, and you will be able to follow through.

A webinar series for episodes 1 to 11 is now available on the Pawsey Centre Youtube channel! Playlist here.
You can download the webinar slides here.

Like this tutorial? Star it on Github (button on top right)!

Schedule

Setup
00:00 1. Introduction to containers
00:10 2. Basics of Singularity
00:50 3. Share files with the host: BLAST, a bioinformatics demo
01:10 4. Build and share your own container image
01:30 5. Inside a build definition file
01:50 6. Building images with Docker
02:10 7. GUI enabled web applications: RStudio in a container
02:30 8. Making Python not awful with containers
02:50 9. Computational Fluid Dynamics with MPI containers
03:10 10. Set up writable containers: another bio example with Trinity
03:30 11. Molecular dynamics with GPU containers
03:45 12. Reproducible scientific workflows
04:00 13. GUI applications using X11 windows: the Gnuplot example
04:15 14. Streamline the user experience: bash wrappers and modules
04:45 15. Setup Singularity on your machine
05:00 16. Overview of Docker
05:30 17. Run multi-component web services with Docker Compose
05:45 18. Other notable container tools
06:00 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.