Webinar: Docker and Singularity for Reproducible Research: Getting Started with Containers
This course is addressed to bioinformaticians and life scientists that are doing bioinformatic analyses and want to get introduced to containers.
Registration deadline: 10 May 2024
General information
- Time: 30 May 2024
- Registration deadline: 10 May 2024
- Location: Online
- Fees:
- Academic: 100 CHF
- For-profit: 500 CHF
- Materials: https://sib-swiss.github.io/containers-introduction-training/2023.12/
Description
Reproducible analysis in bioinformatics goes beyond good documentation and sharing code. Often, analyses depend on an entire environment with many different programs, libraries and settings. For the sake of reproducibility, but also for productivity, you might want to store, reuse, and share your environments using container software such as Docker and Singularity. Containerization is a lightweight and scalable way of working with such isolated environments. For example, with Docker you can develop, store and manage environments based on Linux operating systems which can run in mostly any computer.
Often, bioinformatic calculations also require large memory and CPU resources, therefore you might want to use a shared computer environment (e.g. a HPC cluster). However, to run Docker you need to have privileged rights (i.e. as root), which is not the case for Singularity, a program that enables you to run environments from a wide range of resources (including Docker) in a safe manner without the need for privileged access. Combining Singularity and Docker thus makes you extremely flexible in how, when and where you use your computer environments and those of others.
To introduce you to working with containers in the context of bioinformatics research, we will take a practical approach with several hands-on exercises to go through the basics of using, developing and sharing containers.
Learning outcomes
At the end of the course, the participants are expected to:
- Understand the basic concepts and terminology associated with virtualization with containers
- Customize, store, manage and share containerized environments with Docker
- Describe and understand the essential differences between Docker and Singularity
- Use Singularity to run containers on a shared computer environment (e.g. a HPC cluster)
Prerequisites
Practical experience on the basic UNIX commands is required. You are required to bring your own laptop with Docker pre-installed, and have created an account on dockerhub. Note that you need admin rights in your computer to install and use Docker. In addition, Windows users require a recent version of Windows.