About the course
This slow-paced hands-on course is designed for absolute beginners who want to start using Nextflow DSL2 to achieve reproducibility of the data analysis.
Luca Cozzuto |
Toni Hermoso |
Julia Ponomarenko |
Kais Ghedira |
---|---|---|---|
Outline
This Linux Containers and Nextflow course will train participants to build Nextflow pipelines and run them with Singularity containers.
It is designed to provide trainees with short and frequent hands-on sessions, while keeping theoretical sessions to a minimum.
The course will be fully virtual via the Zoom platform.
Learning objectives
Locate and fetch Docker/Singularity images from dedicated repositories.
Execute/Run a Docker/Singularity container from the command line.
Locate and fetch Nextflow pipelines from dedicated repositories.
Execute/Run a Nextflow pipeline.
Describe and explain Nextflow basic concepts.
Test and modify a Nextflow pipeline.
Implement short blocks of code into a Nextflow pipeline.
Develop a Nextflow pipeline from scratch.
Run a pipeline in diverse computational environments (local, HPC, cloud).
Share a pipeline.
Prerequisite / technical requirements
Being comfortable working with the CLI (command-line interface) in a Linux-based environment. Knowledge of containers is not mandatory. The course materials is online in the dedicated GitHub page for self-learning.
Practitioners will need to connect during the course to a remote server via the “ssh” protocotol. You can learn about it here
Those who follow the course should be able to use a command-line/screen-oriented text editor (such as nano or vi/vim, which are already available in the server) or to be able to use an editor able to connect remotely. For sake of information, below the basics of nano
Having a GitHub account is recommended.
Dates, time, location
Dates: February 07-11, 2022
First day: 12:00-16:00 CET
Rest of the days: 10:00-16.00 CET
Location: virtual, via Zoom.
Suggested program
Day 1: Introduction to Linux containers and Docker
12:00-13:30 Introduction to containers
13:30-14:30 Lunch
14:30-16:00 Introduction to Docker
Day 2: Docker and Singularity
10:00-11:30 Docker
11:30-12:00 Coffee break
12:00-13:30 Docker follow-up and Introduction to Singularity
13:30-14:30 Lunch
14:30-16:00 Singularity
Day 3: Understand and run a basic Nexflow pipeline
10:00-11:30 Introduction to Nextflow
11:30-12:00 Coffee break
12:00-13:30 Channels and Operators
13:30-14:30 Lunch
14:30-16:00 More complex scripts
Day 4: Write, modify and run a complex pipeline
10:00-11:30 Decoupling resources and parameters
11:30-12:00 Coffee break
12:00-13:30 Using public pipelines
13:30-14:30 Lunch
14:30-16:00 Using Singularity