Making your computational science reproducible with containers
This workshop is a hands-on tutorial on Docker and Singularity. Docker is the most popular and user friendly platform for running and managing Linux containers. Singularity is a platform for deploying light-weight containers for HPC systems.
Linux containers, with the build-once-run-anywhere approach, are becoming popular among scientific communities for software packaging and sharing. Docker is the most popular and user friendly platform for running and managing Linux containers. Singularity is a platform for deploying light-weight containers for HPC systems. This workshop is mainly a hands-on tutorial that is organized as follows:
- Overview of the Linux containers technology
- Installing Docker
- Building and managing Docker containers
- Service oriented architecture, SOA, with Docker (Docker Compose)
- Docker for the cloud (Docker Swarm)
- Installing Singularity
- Building and managing Singularity containers (from Docker containers)
- Singularity for HPC (MPI and GPU)
- Install Docker and singularity
- Pull, run, and manage Docker containers
- Build their own Docker images
- Run a basic Docker swarm cluster
- Run a basic SOA with Docker compose (e.g. web server + database server)
- Convert Docker containers to singularity
- Run and manage singularity containers
- Run simple HPC jobs with singularity
Basic knowledge of Linux. It is recommended to attend the SSH workshop in advance, if needed.
Please bring a laptop with SSH access. For Windows, PUTTY needs to be installed.
Open for all, but mainly for researchers and post graduate students.