Skip to content

fpsom/intro-to-cwl-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Overview

Reproducible research is an important part of good scientific practice. Establishing robust computational analysis workflow facilitates reproducible research. There has been a strong emphasis on establishing graphic workflow management systems, such as Galaxy and Knime. However, the landscape and complexity of Linux command line tools for workflow management is vast and complicated. We aim to take advantage of European/International leaders in the field to present current scientific workflow paradigms and a lead workshops to implement a basic workflow. Topics covered include workflows and containerization.

Learning objectives

Docker

  • Understand what containerisation is, and why you might use it in bioinformatics
  • Be familiar with Docker; basic concepts and structure
  • Find and run containers built by other people
  • Build your own application into a container (containerisation)
  • Distribute your container online

CWL

  • Understand syntax and structure for CWL
  • Understand how to write CWL tool definitions for command line tools
  • Read and write CWL files written in YAML
  • How to run CWL workflows locally and on EG-CI
  • Join CWL tools into a workflow
  • Use Docker with CWL to provide software dependencies and ensure reproducibility

Audience and requirements

This introductory tutorial is aimed towards bioinformaticians (graduate students and researchers), who are interested in becoming familiar to Docker based workflows in CWL, as is currently supported by the ΕLIXIR-Greece Compute Infrastructure (EG-CI).

Prerequisites

  • Experience in Shell; this includes basic commands (such as ls, cp, mv, nano/vim) and operations such as (apt, installing tools etc).

Maximum participants: 25

Schedule

Day 1

Time Details
10:00 - 10:30 Tutorial introduction.

- Get to know each other.
- Setup
Link to material
Part I: Containers Background
10:30 - 11:30 Introduction to Containerization.

- Concepts and Theory
Link to material
11:45 - 13:00 Run a container.

- Examples of how to run an existing Docker container
Link to material
Part II: Building a Container
14:00 - 15:30 Building a container image.

- How to build a container
Link to material
15:45 - 17:00 Distribute online

- What are the available options (DockerHub, GitHub)
Link to material
17:00 Closing, discussion and feedback

Day 2

Time Details
09:00 - 09:30 Welcome back and Q&A.

- Recap of Day 1
- Setting up for Day 2
Link to material
Part I: Basics of Workflow Languages
09:30 - 10:45 Intro to workflows.

- Syntax and structure of CWL
Link to material
11:00 - 12:30 Writing a CWL in YAML.

- Examples of tool definitions in CWL
Link to material
Part II: Hands-on
13:30 - 14:45 Combining tools in a workflow.

- Building a complete workflow in CWL
Link to material
15:00 - 16:30 Deploying a tool on EG-CI

- Using the ELIXIR-GR e-infrastructure?
Link to material
16:30 - 17:00 Closing, discussion and Q&A

Registration

Dates of the workshop: 30-31/03/2020 (Postponed due to COVID-19)

Please register to the workshop using this form.

Deadline: Mon 16/03/2020 (tba)

Notifications: Wed 18/03/2020 (tba)

Venue

National Infrastructures for Research and Technology (GRNET)

Kifisias Avenue 7

115 23, Athens, GR

30-31 March, 2020

For more information, check the GRNET contact page here

Other examples

< tba >

Sources / References

The material in the workshop has been based on the following resources:

< tba >

Relevant literature includes:

< tba >

License

License: CC BY 4.0

This material is made available under the Creative Commons Attribution 4.0 International license. Please see LICENSE for more details.

Acknowledgements

This work has been produced with the support of the RDA Europe Ambassador programme. It has received funding from the European Union’s Horizon 2020 (H2020) research and innovation programme via the RDA EU 4.0 project (ref. GA no. 777388).

Citation

Releases

No releases published

Packages

No packages published