Ask.Cyberinfrastructure

What are good ways to allow the use of software containers in a shared HPC cluster?

docker
containers

#1

Docker is getting used to containerize applications. Is there a good way to run Docker containers on HPC?

CURATOR: Raminder Singh


#3

Docker is not used on many HPC sites due to security concerns. That is primarily because Docker can be misused by a regular user to obtain superuser access.

However, alternative container runtimes do exist which try to avoid the security issue and offer similar features. As an added bonus they usually support importing existing Docker images. Conversion of images becomes trivial.

You can find more information here:

Singularity
https://www.sylabs.io/docs/

Shifter
https://www.nersc.gov/research-and-development/user-defined-images


#2

Singularity can be used to run docker containers or to create custom containers for HPC (shared) clusters without providing root access to the users. Visit https://www.rc.fas.harvard.edu/resources/documentation/software/singularity-on-odyssey/ for more details.