Container computing is revolutionizing the way applications are developed and delivered. It offers opportunities that never existed before for significantly improving efficiency of scientific workflows and easily moving these workflows from the laptop to the supercomputer. Tools like Docker and Shifter enable a new paradigm for scientific and technical computing. However, to fully unlock its potential, users and administrators need to understand how to utilize these new approaches. This tutorial will introduce attendees to the basics of creating container images, explain best practices, and cover more advanced topics such as creating images to be run on HPC platforms using Shifter. The tutorial will also explain how research scientists can utilize container-based computing to accelerate their research and how these tools can boost the impact of their research by enabling better reproducibility and sharing of their scientific process without compromising security.
The content for the handouts and slides will be posted and updated at https://github.com/nersc/Shifter-Tutorial. Previous versions of this tutorial have been stored as git tags.
This is hands-on tutorial. Participants should bring a laptop and pre-install Docker in advance to make the best use of time during the tutorial (see the Setup section for details). Users can also create a docker account in advance at https://cloud.docker.com/. This account will be needed to create images on docker cloud and dockerhub. In addition, users should install an ssh client for their operating system so they can access the HPC resources we will use for the Shifter portion of the tutorials.
For more detailed instructions, see Setup.
You can find updated versions of slides here.
Please raise your hand if you need assistance. You can also ask questions on this Google Doc.
Shifter is available using a modified BSD license. The Shifter code stack is available in the NERSC github repository.
Please fill out the SC survey about this tutorial at the end of the session. Feel free to join the Shifter group or contact Shane or Rollin if you have any questions about Shifter in the future.
- 13:30: Welcome and Intro to Containers
- 14:30: Intro to Shifter
- Overview of Shifter
- How is it different from Docker
- Quick guide to Shifter Installation
- 15:00: Break
- Distribute NERSC logins. Please obtain a NERSC login from tutorial staff during the break
- 15:30: Questions from previous sections
- 15:40: Second hands-on - Shifter
- 16:30: Advanced Shifter, Optimizations, and Uses Cases