Skip to content
Vanessa Sochat edited this page Jun 22, 2018 · 24 revisions

Welcome to the Singularity Hub Wiki!

What is Singularity Hub?

Singularity Hub is a registry for scientific linux containers.

What is a Linux Container?

A container image is an encapsulated, portable environment that is created to distribute a scientific analysis or a general function. Containers help with reproducibility of such content as they nicely package software and data dependencies, along with libraries that are needed. Thus, the core of Singularity Hub are these Singularity container images, and by way of being on Singularity Hub they can be easily built, updated, referenced with a url for a publication, and shared. This small guide will help you to get started building your containers using Singularity Hub and your Github repositories.

How does it work?

You can follow some basic steps to build your scientific containers.

  1. create an account on Singularity Hub, authentication is with Github
  2. connect a Github repository to a new container collection. This means creating a webhook that will trigger a new build at each push to the repository. One collection coincides with one repository, and holds multiple images.
  3. push the Singularity build recipe (a text file specification to build your image called Singularity) to the repository to trigger the build
  • Singularity-Hub will be notified of the push via the webhook, and the build recipe file will be version controlled via the Github commit. This repo url, commit id, storage location, and some secrets are then sent to Singularity Hub builders.
  • the container is built on the cloud, and when finished, is accessible programatically from the Singularity command line client, or the Singularity Global client.

Singularity Hub is developed at Stanford University with support from Google Cloud. Thank you!

News

Singularity 2.5 is released, and so is Singularity Hub 2.1! See the Release Notes for details.


Getting Started

This is the official user guide for singularity-hub.org, providing more detail on how to build, manage, and deploy your images. For quick answers, see our Troubleshooting page.

  • Generate: How to connect to Github and create automatic builds for your containers.
  • Visualize: Use Singularity Hub and command line tools to see the guts of your container.
  • Deploy: Use the Singularity software to use your containers from Singularity Hub.
  • Share: Share your containers via social media, and upload asciicasts to distribute.

Resources


Meet the Builders

We deploy instances on Google Cloud, our "builders" on demand to build your image. Each builder performs the build in a secure environment, and can be used in different ways! You can read more about the builders, or continue to learn about your building options.