CCR is now supporting the use of containers within our high performance cluster environment.  Container computing is most widely associated with Docker; however, there are other products available that provide similar capabilities.  CCR has implemented Singularity, which allows users the ability to use various types of containers (including Docker containers) but without requiring administrative privileges on the servers.  Though the use of containers has been very useful for some applications, it was not easy to port scientific and HPC-centric applications into containerized solutions.  Singularity was developed to support this community and the unique requirements it has.  


The necessary components have been installed on CCR's clusters so that users can begin using Singularity.  There is an enormous volume of documentation online for Singularity and, rather than re-writing it, we will include links here to what we believe most users will need to get started.


Introduction to Singularity

Singularity Interface Overview

Download pre-built images


Building images from scratch

Building a Container from Singularity Hub or Docker Hub

Make sure to set your environment variables correctly before attempting to build your own containers!


Running NVIDIA GPU containers using Singularity

Running NVIDIA containers on the CCR cluster - example


In the future, we will provide more specific documentation for using Singularity on CCR's clusters as well as examples of how to get started.  Please contact ccr-help with any questions about this new capability or to provide suggestions on additional documentation that could be offered.