Workshop overview#

As mentioned on the Welcome page, this workshop will be focused on how to utilize the Docker framework to produce and share reproducible, light-weight workflows to facilitate good scientific practice.

We will try to provide folks with a brief overview of why this is important, central aspects of virtualization, how to work with and manage Docker containers and lastly what a container is made up of, as well as how these are build and published to the web or saved locally.

The framework and setup#

The complete workshop will be provided within this Jupyter Book format you’re currently looking at, free for everyone to check and try out, as well as utilize further.

To fully participate in the workshop you’ll need a Bash shell, here usually referred to as terminal and a working Docker installation, as outlined in the Setup for the workshop section.

To help folks that don’t have any experience with these resources, we compiled a set of tutorials that participants can go through within the prerequisite section. While this won’t be enough to go past basic skills, we still hope it will be useful to familiarize yourself with core aspects that will help during the workshop.

For some sessions we will additionally make use of some files we provide, you can either get them by downloading the workshop GitHub repository or by running the following code in you termina (we’ll also discuss what these commands do in the introdcutory session, no worries):

docker pull aaronreer1/get_workshop_materials:0.0.1 docker run -v $(pwd):/output aaronreer1/get_workshop_materials:0.0.1

Software containers - Basics#

Within the first half of the workshop we will focus on the basics concerning working with software containers. In more detail, we will talk about what software containers are and have a look at how they work, assessed and management.

logo
https://media3.giphy.com/media/2nt2dX21yO0NAaP7BS/giphy.gif?cid=ecf05e47thh4b9tjde2kf9e84ag7i6m3rbbvo1tilt6fjpll&rid=giphy.gif&ct=g

Software containers - Advanced aspects#

The second session will build upon the things learned during the first and will introduce the workshop participants to the larger software container ecosystem and more advanced aspects. Specifically, we will explore how software containers can be created and automated.

logo
https://media4.giphy.com/media/3orif0rjs49gsPWg1y/giphy.gif?cid=ecf05e47driaof19nl7irhimygzitnzv7ce6vkl6hua50hg5&rid=giphy.gif&ct=g

The details#

You can check out the respective sections: