Remote container systems

How do I access containers written by other people and/or share my own?

Michael Hall - Iqbal Group (EBI)


GitHub followers Twitter Follow

Singularity Hub

What is Singularity Hub?

A cloud environment that builds and stores Singularity containers from GitHub commits.

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Connecting a GitHub repository

Pull a specific build from Singularity Hub

singularity run "shub://<username>/<repository>:<tag>@<hash|commit>"
username="mbhall88"
repository="singularity_training"
tag="fun"
HASH="edae0eecad907e5255bd74b26b7414e0"
singularity run "shub://$username/$repository:$tag@$HASH"
# or
singularity pull --force --name fun.sif "shub://$username/$repository:$tag@$HASH"

Sylabs Cloud

Sylabs Cloud

  • Container Library: official image registry for Sylabs.io

  • Remote Builder: build your image in the cloud - useful when no access to sudo

  • Keystore Service: cryptographically sign and verify images

Container Library

singularity pull --name ubuntu.sif library://library/ubuntu:18.04

Use containers built by others

Remote builder

Remote builder

singularity build --remote fun.sif Singularity.fun 

Use the remote builder from CLI*

*Need to have a Sylabs cloud token

Docker Hub

Docker Hub

Docker Hub

singularity shell docker://tensorflow/tensorflow
singularity pull docker://tensorflow/tensorflow
singularity run docker://tensorflow/tensorflow
singularity exec docker://tensorflow/tensorflow

Singularity can use Docker images!!!!

Bootstrap: docker
From: tensorflow/tensorflow

Quay

Quay

Container registry for Docker and rkt

Huge resource of Biocontainers!

Quay

Because there are so many containers, best to just search the tool

Quay

All Bioconda packages have a built biocontainer on quay.io

Quay

All Bioconda packages have a built biocontainer on quay.io

Quay

Quay

Quay

Quay

The way to construct these URLS is

docker://quay.io/biocontainers/<tool>:<tag>

So for this example of bwa the URL would be

docker://quay.io/biocontainers/bwa:0.7.3a--h84994c4_4

Quay

Quay

singularity exec docker://quay.io/biocontainers/bwa:0.7.3a--h84994c4_4 bwa mem

Remote container systems

By Michael Hall

Remote container systems

How do I access containers written by other people and/or share my own?

  • 557