singularityhub EMBL Rome
Introduction
This repository aims at sharing singularity images among the EMBL community. We try to follow a strict model to provide uniformly designed singularities. Please let us know if we should modify anything.
Pulling
Please read the entire section before trying to pull any singularities.
To pull an existing singularity, first have a look at the image of interest in the list here or in this folder.
Copy the script below in a download.sh
file and run the command: bash dowload.sh username containername imagename
. For example, bash download.sh descoste fastqcv0019.sif 'fastqc:0119'
.
#!/usr/bin/bash
USERNAME=$1
CONTAINERNAME=$2
IMAGE=$3
singularity pull --docker-username $USERNAME --docker-password $SINGULARITY_DOCKER_PASSWORD $CONTAINERNAME oras://git.embl.de:4567/descoste/singularityhub-emblrome/$IMAGE
Important: You need to define a git token to be able to use the $SINGULARITY_DOCKER_PASSWORD
variable. Follow these steps:
- Click on your avatar at the top right of your gitlab page.
- Click on
preferences
. - Click on
Access Tokens
. - Enter a Token name. ex: "singularitypull".
- In the
Select scopes
section, selectread_registry
. - Click
Create personal access token
. - At the beginning of the new loaded page, click on the folder icon to copy your new personal access token.
- Edit your
.bashrc
(emacs -nw ~/.bashrc
orvim ~/.bashrc
) by addingexport SINGULARITY_DOCKER_PASSWORD="paste_your_copied_access_token_here"
wherever you like. - After closing your editor, run
exec bash
. - Now try to pull a particular singularity following the instructions above.
Contributing
This repository is maintained by Nicolas Descostes and Francesco Tabaro. To add a new singularity recipe, you need to:
- Clone the repository:
git clone git@git.embl.de:descoste/singularityhub-emblrome.git
- Enter the folder:
cd singularityhub-emblrome/
In order to test your singularity, you need to redirect the repository to one of your own:
- Go to gitlab and create a new project: 'test-singularity' (**Unselect 'Initialize repository with a README')
- In the
singularityhub-emblrome/
, entergit remote -v
. You should see:
origin git@git.embl.de:descoste/singularityhub-emblrome.git (fetch)
origin git@git.embl.de:descoste/singularityhub-emblrome.git (push)
- Set the new URL as the new target. You can find the new URL under the 'clone' button on gitlab. Copy the ssh address and run
git remote set-url origin mynewurl
. For instancegit remote set-url origin git@git.embl.de:descoste/test-singularity.git
. - Check that your repository targets the correct URL by running again
git remote -v
. - push the whole repository to the new location:
git add .
git push