Skip to content

Commit 357a210

Browse files
committed
RElink added to the README
1 parent a081f73 commit 357a210

File tree

1 file changed

+101
-92
lines changed

1 file changed

+101
-92
lines changed

README.md

Lines changed: 101 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
# QuantMS Docker Containers
22

3-
A repository of production-ready Docker and Singularity containers for proteomics tools with special in quantms, including **DIA-NN** and **OpenMS**.
3+
A repository of production-ready Docker and Singularity containers for proteomics tools used in quantms pipelines, including **DIA-NN**, **Relink**, and **OpenMS**.
44

55
## Overview
66

77
This repository provides containerized versions of popular proteomics tools:
88

99
- [DIA-NN](https://github.com/vdemichev/DiaNN): A powerful software solution for analyzing DIA proteomics data
10+
- [Relink](https://github.com/bigbio/relink): Crosslinking mass spectrometry analysis pipeline (xiSEARCH, xiFDR, Scout)
1011
- [OpenMS](https://www.openms.de/): A versatile open-source software for mass spectrometry data analysis
1112

1213
These containerized versions offer:
@@ -21,17 +22,57 @@ These containerized versions offer:
2122

2223
### DIA-NN Containers
2324

24-
**Important**: Due to licensing restrictions, DiaNN containers are not publicly distributed. Users must build these containers locally:
25+
**Important**: Due to licensing restrictions, DIA-NN containers are not publicly distributed. Users must build these containers locally or have access to the private `ghcr.io/bigbio/diann` registry.
26+
27+
| Version | Directory | Key Features | Container Tag |
28+
|---------|-----------|-------------|---------------|
29+
| 1.8.1 | `diann-1.8.1/` | Core DIA-NN, library-free analysis | `ghcr.io/bigbio/diann:1.8.1` |
30+
| 1.9.2 | `diann-1.9.2/` | QuantUMS quantification, redesigned NN | `ghcr.io/bigbio/diann:1.9.2` |
31+
| 2.0.2 | `diann-2.0/` | Parquet output, proteoform confidence | `ghcr.io/bigbio/diann:2.0.2` |
32+
| 2.1.0 | `diann-2.1.0/` | Native .raw on Linux | `ghcr.io/bigbio/diann:2.1.0` |
33+
| 2.2.0 | `diann-2.2.0/` | Latest release | `ghcr.io/bigbio/diann:2.2.0` |
2534

2635
```bash
27-
# Build Docker container
36+
# Build Docker container locally
2837
cd diann-2.1.0/
2938
docker build -t diann:2.1.0 .
3039

3140
# Build Singularity container from Docker
3241
singularity build diann-2.1.0.sif docker-daemon://diann:2.1.0
3342
```
3443

44+
### Relink Container
45+
46+
The Relink container provides a complete crosslinking mass spectrometry analysis environment.
47+
48+
| Component | Version | Description |
49+
|-----------|---------|-------------|
50+
| xiSEARCH | 1.8.11 | Crosslink identification search engine |
51+
| xiFDR | 2.3.10 | FDR estimation for crosslinked peptides |
52+
| Scout | 2.0.0 | Crosslink analysis tool |
53+
| pyOpenMS | latest | Python bindings for OpenMS |
54+
| .NET Runtime | 9.0 | Required by Scout |
55+
| Java JRE | 21 | Required by xiSEARCH and xiFDR |
56+
57+
| Container Type | Tag | URL |
58+
|----------------|-----|-----|
59+
| Docker | 1.0.0 | `ghcr.io/bigbio/relink:1.0.0` |
60+
| Docker | latest | `ghcr.io/bigbio/relink:latest` |
61+
| Singularity | 1.0.0 | `oras://ghcr.io/bigbio/relink-sif:1.0.0` |
62+
63+
```bash
64+
# Pull Relink Docker image
65+
docker pull ghcr.io/bigbio/relink:latest
66+
67+
# Run xiSEARCH
68+
docker run -v /path/to/data:/data ghcr.io/bigbio/relink:latest \
69+
java -jar /opt/xisearch/xiSEARCH.jar --help
70+
71+
# Run Scout
72+
docker run -v /path/to/data:/data ghcr.io/bigbio/relink:latest \
73+
dotnet /opt/scout/Scout_Unix.dll --help
74+
```
75+
3576
### OpenMS Containers
3677

3778
OpenMS containers are publicly available and can be pulled directly:
@@ -45,163 +86,130 @@ OpenMS containers are publicly available and can be pulled directly:
4586

4687
The date tag (YYYY.MM.DD) is manually set for each release to ensure version stability.
4788

48-
## ⚠️ Important License Information
89+
## License Information
4990

5091
Please note the following license restrictions:
5192

52-
- DIA-NN: Please review the [DIA-NN 2.1.0 license](diann-2.1.0/LICENSE.txt) before using
53-
- OpenMS: OpenMS is available under the [BSD 3-Clause License](https://github.com/OpenMS/OpenMS/blob/develop/LICENSE)
93+
- **DIA-NN**: Custom academic license with restrictions. Please review the [DIA-NN license](diann-2.1.0/LICENSE.txt) before using. No commercial use or cloud deployment without collaboration agreement.
94+
- **Relink/xiSEARCH/xiFDR/Scout**: Please review the individual tool licenses
95+
- **OpenMS**: Available under the [BSD 3-Clause License](https://github.com/OpenMS/OpenMS/blob/develop/LICENSE)
5496

5597
## Technical Specifications
5698

57-
### DIA-NN Container Details
99+
### DIA-NN Containers
58100
- Base Image: `ubuntu:22.04`
59-
- Available Version: DIA-NN 2.1.0
60-
- Architecture Support: `amd64`/`x86_64`
101+
- Available Versions: 1.8.1, 1.9.2, 2.0.2, 2.1.0, 2.2.0
102+
- Architecture: `amd64`/`x86_64`
103+
104+
### Relink Container
105+
- Base Image: `python:3.12-slim` (multi-stage build)
106+
- Version: 1.0.0
107+
- Architecture: `amd64`/`x86_64`
108+
- Includes: Java 21, .NET 9.0, Python 3.12, pyOpenMS, polars, pandas
61109

62-
### OpenMS Container Details
110+
### OpenMS Containers
63111
- Sourced from: `ghcr.io/openms/openms-tools-thirdparty`
64-
- Architecture Support: `amd64`/`x86_64`
112+
- Architecture: `amd64`/`x86_64`
65113

66114
## Installation & Usage
67115

68116
### Using Pre-built Docker Images
69117

70118
```bash
71-
# Pull DIA-NN Docker image
72-
docker pull ghcr.io/bigbio/diann:latest
119+
# Pull DIA-NN Docker image (requires GHCR access)
120+
docker pull ghcr.io/bigbio/diann:2.1.0
121+
122+
# Pull Relink Docker image
123+
docker pull ghcr.io/bigbio/relink:latest
73124

74125
# Pull OpenMS Docker image
75126
docker pull ghcr.io/bigbio/openms-tools-thirdparty:latest
76127
```
77128

78-
### Using Pre-built Singularity Images
129+
### Building Images Locally
79130

80131
```bash
81-
# Pull OpenMS Singularity image
82-
singularity pull openms.sif oras://ghcr.io/bigbio/openms-tools-thirdparty-sif:latest
83-
```
84-
85-
### Building the Images Locally
132+
# Build DIA-NN (any version)
133+
cd diann-2.1.0/ && docker build -t diann:2.1.0 .
86134

87-
#### DIA-NN Build
88-
```bash
89-
# Build DIA-NN 2.1.0
90-
cd diann-2.1.0/
91-
docker build -t diann:2.1.0 .
135+
# Build Relink
136+
cd relink-1.0.0/ && docker build -t relink:1.0.0 .
92137
```
93138

94139
### Basic Usage
95140

96-
#### DIA-NN Usage
141+
#### DIA-NN
97142
```bash
98-
# View DIA-NN help
99-
docker run -it diann:2.1.0 diann --help
100-
101-
# Process data (example)
102-
docker run -v /path/to/data:/data -it ghcr.io/bigbio/diann:latest diann \
143+
docker run -v /path/to/data:/data ghcr.io/bigbio/diann:2.1.0 diann \
103144
--f /data/input.raw \
104145
--lib /data/library.tsv \
105146
--out /data/results.tsv
106147
```
107148

108-
#### DIANN Usage in quantms pipeline
149+
#### DIA-NN in quantmsdiann pipeline
109150

110-
After you build your container, you chave to add a custom configuration file to resolve the diann container. You can do this by creating a file called `diann_config.yml` in the `quantms` directory. The content of the file should be:
151+
After building your container, create a custom configuration file to override the DIA-NN container:
111152

112-
```yaml
153+
```nextflow
113154
process {
114155
withLabel: diann {
115-
container = '/path-singularity-file/diann-2.0.0.sif'
156+
container = '/path-singularity-file/diann-2.1.0.sif'
116157
}
117158
}
118159
```
119160

120-
Please check quantms documentation for more information about how to run the pipeline with custom configurations.
161+
Please check [quantmsdiann documentation](https://github.com/bigbio/quantmsdiann) for more information.
121162

122-
#### OpenMS Usage
163+
#### Relink
123164
```bash
124-
# View OpenMS tools
125-
docker run -it ghcr.io/bigbio/openms-tools-thirdparty:latest ls /usr/local/bin/
165+
# Run xiSEARCH
166+
docker run -v /path/to/data:/data ghcr.io/bigbio/relink:latest \
167+
java -jar /opt/xisearch/xiSEARCH.jar [options]
126168

127-
# Run an OpenMS tool (example)
128-
docker run -v /path/to/data:/data -it ghcr.io/bigbio/openms-tools-thirdparty:latest \
169+
# Run Scout
170+
docker run -v /path/to/data:/data ghcr.io/bigbio/relink:latest \
171+
dotnet /opt/scout/Scout_Unix.dll [options]
172+
```
173+
174+
#### OpenMS
175+
```bash
176+
docker run -v /path/to/data:/data ghcr.io/bigbio/openms-tools-thirdparty:latest \
129177
PeakPickerHiRes -in /data/input.mzML -out /data/output.mzML
130178
```
131179

132180
### Data Mounting
133181
When processing data, mount your local directories using Docker volumes:
134182
```bash
135-
docker run -v /local/path:/container/path -it ghcr.io/bigbio/diann:latest diann [commands]
183+
docker run -v /local/path:/container/path -it <container> [commands]
136184
```
137185

138186
## CI/CD Workflow
139187

140188
This repository includes a GitHub Actions workflow that builds and syncs all containers:
141189

142190
**QuantMS Containers Build and Sync**: A combined workflow that:
143-
1. First builds and pushes DIA-NN Docker and Singularity containers
144-
2. Then syncs OpenMS containers from the official repository to BigBio
191+
1. Builds and pushes DIA-NN Docker and Singularity containers (all versions)
192+
2. Builds and pushes Relink Docker and Singularity containers
193+
3. Syncs OpenMS containers from the official repository to BigBio
145194

146195
The workflow is triggered by:
147196
- Pushes to the main branch
148-
- Pull requests (for DiaNN builds only)
197+
- Pull requests (for Dockerfile changes)
149198
- Release events (which also tag images as "latest")
150199
- Manual dispatch with configurable options
151200

152-
This sequential approach ensures that all containers are built and pushed in a coordinated manner.
153-
154-
## Performance Tips
155-
156-
1. **Memory Allocation**: Ensure sufficient memory is allocated to Docker
157-
2. **Storage**: Use fast storage (SSD recommended) for data directories
158-
3. **CPU**: These tools benefit from multiple cores; allocate accordingly
159-
4. **Temp Files**: Consider mounting a temp directory for large analyses
160-
161201
## Troubleshooting
162202

163-
Common issues and solutions:
164-
165203
1. **Permission Errors**
166204
```bash
167-
# Fix file ownership issues
168205
chown -R $(id -u):$(id -g) /path/to/output
169206
```
170207

171-
2. **Memory Issues**
172-
- Increase Docker memory allocation in Docker Desktop settings
173-
- Use `--memory` flag to specify container memory limit
208+
2. **Memory Issues**: Increase Docker memory allocation in Docker Desktop settings
174209

175-
3. **OpenMS Singularity Pull Issues**
176-
177-
If you encounter an error when pulling OpenMS Singularity images:
178-
```
179-
FATAL: While pulling image from oci registry: error fetching image to cache: failed to get checksum for oras://ghcr.io/bigbio/openms-tools-thirdparty-sif:YYYY.MM.DD: GET https://ghcr.io/v2/bigbio/openms-tools-thirdparty-sif/manifests/YYYY.MM.DD: DENIED: requested access to the resource is denied
180-
```
181-
182-
Try the following:
183-
184-
- Verify you're using the correct date tag format (YYYY.MM.DD)
185-
- Check the workflow logs to confirm the exact version tag that was published
186-
- If using Nextflow, try increasing the pull timeout:
187-
```
188-
nextflow run bigbio/quantms -r dev -profile test_lfq,singularity -with-singularity --singularity.pullTimeout '2h'
189-
```
190-
- If the issue persists, please open an issue on the GitHub repository
191-
192-
4. **DiaNN Container Issues**
193-
194-
Remember that DiaNN containers must be built locally due to licensing restrictions:
195-
196-
- Follow the build instructions in the "DiaNN Containers" section
197-
- For quantms pipeline, specify your local DiaNN container path in a custom config file:
198-
```yaml
199-
process {
200-
withLabel: diann {
201-
container = '/path-to-your-singularity-file/diann-2.1.0.sif'
202-
}
203-
}
204-
```
210+
3. **DIA-NN Container Issues**: Must be built locally or with GHCR access due to licensing
211+
212+
4. **Relink Java/Dotnet Issues**: Ensure the container has sufficient memory (recommend >= 4GB)
205213

206214
## Maintainers
207215

@@ -220,9 +228,10 @@ We welcome contributions! Please:
220228
If you use these containers in your research, please cite:
221229

222230
```bibtex
223-
@software{quantms_docker,
231+
@software{quantms_containers,
224232
author = {Perez-Riverol, Yasset},
225233
title = {QuantMS Docker Containers},
226234
year = {2025},
227-
url = {https://github.com/ypriverol/quantms-docker}
228-
}
235+
url = {https://github.com/bigbio/quantms-containers}
236+
}
237+
```

0 commit comments

Comments
 (0)