Key Information
Tutors: Dr Jianliang (Liam) Gao
Duration: 3 x 2 hour sessions
Delivery: Live (In-Person) & Live (Online)
Course Credit (PGR only): 1 credit
Audience: Research Degree Students, Postdocs, Research Fellows
Dates
- 26, 29 & 30 January 2026
14:00-16:00, South Kensington - 13, 14 & 15 May 2026
11:00-13:00, Zoom
Course Resources
Scientific software is often dependent on other packages and libraries (and specific versions of these). The dependencies are hard to reproduce upon redeployment by collaborators and users who may not share the same system setup. This creates an unnecessary barrier to sharing many excellent software packages making them less shareable and reproducible.
Containers are an effective solution to this problem. The course teaches the fundamentals of creating, deploying and managing containers. You will learn about the essential commands and scripts, about Docker Hub and Singularity (HPC-friendly solution). The workshop will be delivered through a combination of slides, demonstrations and hands-on practice.
Syllabus:
- What is a container?
- Docker and Singularity commands
- Creating containers
- Visiting Docker Hub
- Creating own container images
- Singularity commands
Part 1: Introducing containers, Docker command lines
In this part, you will learn why containers are used, what containers are, and you will get hands-on practice with Docker (the most popular container tool) command lines.
Part 2: Create containers with examples
In this part, you will get familiar with creating container images in Docker environment. You will learn to compose Dockerfile and build container images through examples including bash, Python and R. You will get hands-on practice as well.
Part 3: Share container images and scale up with singularity.
In this part, you will practice how to share your own container images with others using either Docker Hub distribution or other ways. You will also learn how to run images using singularity on high performance computing cluster.
This course is open to Research Degree Students, Postdocs & Research Fellows. Limited spaces available for wider Imperial community.
Learning Outcomes
On completion of this workshop, you will be better able to:
- Understand the benefits of using containers for research
- Use the Docker commands and basic Singularity commands
- Compose Dockerfiles to create Docker images and manage Docker Hub repository
- Interpret common errors and use these to help debug a container
Pre-requisites
Knowledge of the fundamentals of the Linux command line and text editing on the command line. Students who have been routinely working with scientific software packages are likely to benefit from this course more than students who are just starting with research computing.
How to book
- Early Career Researchers (Research Degree Students, Postdocs, Research Fellows) should book via Inkpath using your Imperial Single-Sign-On.
- All other members of the Imperial community, should book here.
Please ensure you have read and understood ECRI’s cancellation policy before booking.