From the Docker website: "A container image is a lightweight, stand-alone, executable package of a piece of software that includes everything needed to run it: code, runtime, system tools, system libraries, settings."
Availability and Restrictions
Singularity is available on Owens and Pitzer clusters. Only one version is available at any given time. To find out the current version:
module load singularity singularity --version
Singularity is available to all OSC users.
Publisher/Vendor/Repository and License Type
SyLabs, Inc., SingularityWare, LLC., Gregory M. Kurtzer, LBNL/ Open source
To set up the environment for Singularity on the OSC clusters, use the command:
module load singularity
See HOWTO: Use Docker and Singularity Containers at OSC for information about using Singularity on the Owens cluster, including some site-specific caveats.
Example: Run a container from the Singularity hub
[owens-login01]$ singularity run shub://vsoch/hello-world Progress |===================================| 100.0% RaawwWWWWWRRRR!! [owens-login01]$
No loop devices available
If you encounter an error like
[owens-login01]$ singularity run shub://vsoch/hello-world Progress |===================================| 100.0% FATAL: container creation failed: mount error: can't mount image /proc/self/fd/13: failed to find loop device: could not attach image file too loop device: No loop devices available
You can try to clean up the default Singularity caching images in
$HOME/.singularity/cache. Alternatively, you can use different cache directory when you run a job:
[o0001]$ export SINGULARITY_CACHEDIR=$TMPDIR [o0001]$ singularity run shub://vsoch/hello-world