Running the TPP Singularity image
From SPCTools
Revision as of 18:56, 21 February 2023 Edeutsch (Talk | contribs) ← Previous diff |
Current revision Edeutsch (Talk | contribs) |
||
Line 56: | Line 56: | ||
<pre style="white-space: pre-wrap">singularity pull library://spctools/tpp/tpp:6-2-0 | <pre style="white-space: pre-wrap">singularity pull library://spctools/tpp/tpp:6-2-0 | ||
</pre> | </pre> | ||
+ | (this should put a tpp_6-2-0.sif file that is the container image in your current working directory. You may wish to move that .sif into a central location where it can be easily accessed, perhaps with other .sif files) | ||
Line 70: | Line 71: | ||
</pre> | </pre> | ||
- | If you only want to run tools like Comet and PeptideProphet from the command line, that's all. You just ran Comet and PTMProphet. | + | If you only want to run tools like Comet and PeptideProphet from the command line, that's all. You just ran Comet and PTMProphet. The next step it to run them with real data and appropriate parameters. |
Finis! | Finis! |
Current revision
Contents |
Overview
Updated: 2023-02-21
The Singularity system allows the distribution of pre-built computational units called containers, which can be run on any system with the Singularity software installed. The spctools/tpp image is built based on the equivalent Docker image, which is based on the BioContainers Ubuntu image, and uses many of the BioContainers conventions. Singularity has the advantage that (once installed) it can be run in ordinary user mode, rather than requiring sudo privileges.
Installing Singularity
Ideally you already have Singularity installed on your machine. If not, here is some potential installation guidance on how to install Singularity your computer. If you are running Fedora or Enterprise Linux, installation should be as easy as:
sudo yum install singularity-ce
If you are running Ubuntu or another distribution of Linux, installation may be more complex. As of this writing, there is no Ubuntu package for Singularity. First, check to see if there is one available today.
apt list | grep -i singularity
(there are other things called singularity such as some music things, etc. You want one with a version around 3.10)
Assuming it's still not there, here is a way to install the above Fedora package on Ubuntu. First install alien:
sudo apt --yes install alien
Find the most recent and relevant version of Singularity at the Fedora package database at: https://src.fedoraproject.org/rpms/singularity-ce and download:
wget https://kojipkgs.fedoraproject.org/packages/singularity-ce/3.10.5/3.fc38/x86_64/singularity-ce-3.10.5-3.fc38.x86_64.rpm
Then convert to a deb (this takes a few minutes without obvious output)
sudo alien -d singularity-ce-3.10.5-3.fc38.x86_64.rpm
Then install the deb (there may be some sort of a permission denied error at the very end after installation, which seems to be harmless)
sudo apt install ./singularity-ce_3.10.5-4_amd64.deb
Give the installation a quick test. If this doesn't work, you'll need to troubleshoot.
singularity --version
Downloading spctools/tpp docker image
First, find the most appropriate TPP image:
singularity search spctools Found 2 container images for amd64 matching "spctools": library://spctools/tpp/tpp:6-1-0 library://spctools/tpp/tpp:6-2-0
Then download the latest TPP container
singularity pull library://spctools/tpp/tpp:6-2-0
(this should put a tpp_6-2-0.sif file that is the container image in your current working directory. You may wish to move that .sif into a central location where it can be easily accessed, perhaps with other .sif files)
Running a specific TPP program via the Singularity image
If you want to run a specific program, e.g. Comet, from the TPP installation, you can invoke it along with any arguments as illustrated below, where we have also mapped the current working directory outside the container to the /data directory inside the container, which is the current working directory inside the container by default.
singularity run --bind "$PWD" ./tpp_6-2-0.sif comet -p
You should find a freshly created comet.params.new file in the current directory after the command completes. To run PTMProphet and see its command-line parameters, try:
singularity run --bind "$PWD" ./tpp_6-2-0.sif PTMProphetParser
If you only want to run tools like Comet and PeptideProphet from the command line, that's all. You just ran Comet and PTMProphet. The next step it to run them with real data and appropriate parameters.
Finis!