Containers: Achieving Portability & Reproducibility of Research Computational Environments (python stream)
[cards class_name="authors" cols="4"(./docs/assets/cards/author_cards.yaml)]
!!! overview ""
:fontawesome-regular-bookmark: Description
This course explores several different approaches to provide an end user with a software environment that ensures successful execution of scientific analysis software in a reproducible manner. It then focuses upon an examplar - Software Containers (Specifically implemented using Docker).
</br>
:fontawesome-solid-arrow-left: **Prerequisites**
To be able to follow this course, learners should have knowledge in:
1. Familiarity with using a text editor to create and edit plain ASCII text files.
2. Basic experience in using command-line Linux.
3. Additionally, students will find it beneficial to have an overview of how software is installed under Linux.
:fontawesome-solid-arrow-right: **Learning Outcomes:**
By the end of the course, learners will be able to:
1. State several approaches to reproducible software environments and critically debate the strengths and weaknesses of each approach.
2. Identify the roles of particular commands in a Dockerfile and create simple functional Docker containers.
</br>
:fontawesome-solid-users: **Target Audience:** Researchers, undergraduate students, postgraduate students, etc...
</br>
:fontawesome-solid-stairs: **Level:** Beginner/Intermediate
:fontawesome-solid-lock: **License:** [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/)
:fontawesome-solid-money-bill-1: **Funding:** This project has received funding from [name of funders].
[comment]: # (Property in Bioschema: description)
[comment]: # (Property in Bioschema: coursePrequsites)
[comment]: # (Property in Bioschema: teaches)
[comment]: # (Property in Bioschema: audience)
[comment]: # (Property in Bioschema: educationalLevel)
[comment]: # (Property in Biochema: licence)
[comment]: # (This is an example for CONVERGE)
[cards class_name="contributors" cols="6"(./docs/assets/cards/contributor_cards.yaml)] Greek Mythology icons made by max.icons from www.flaticon.com
Please cite as:
- Mark Fernandes, Pen-Yuan Hsing, Naeem Muhammad, Alexander Botzki. (2024). The ELIXIR Code Reproducibility lesson - Software Containers for computational reproducibility. Zenodo DOI: {here}
- Geert van Geest, Elin Kronander, Jose Alejandro Romero Herrera, Nadja Žlender, & Alexia Cardona. (2023). The ELIXIR Training Lesson Template - Developing Training Together (v1.0.0-alpha). Zenodo. https://doi.org/10.5281/zenodo.7913092.
To run this lesson you need to install code and data from here
To run this course you need to install Docker on your computer Instructions here and have access to a text editor program that can edit and save ASCII text documents (Not a word processor like Word).
NB Course examples assume an Intel architecture computer (i386). The author has ssucessfully run the exercises on an Apple Silicon Macintosh
by creating a UTM Debian linux Virtual machine with Intel emulation.
Blank Sillouette from User Icon Vectors by Vecteezy