Skip to content

Commit bccfc78

Browse files
committed
Diann 2.0 available.
1 parent dd6d7f5 commit bccfc78

File tree

2 files changed

+84
-8
lines changed

2 files changed

+84
-8
lines changed

.github/workflows/docker-image.yml

Lines changed: 31 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,43 @@
1-
name: Docker Image CI
1+
name: Build DiaNN Docker Images
22

33
on:
44
push:
55
branches: [ "main" ]
6+
paths:
7+
- 'diann-*/Dockerfile'
8+
- '.github/workflows/**'
69
pull_request:
710
branches: [ "main" ]
11+
paths:
12+
- 'diann-*/Dockerfile'
13+
- '.github/workflows/**'
814

915
jobs:
10-
1116
build:
12-
17+
name: Build Docker Images
1318
runs-on: ubuntu-latest
1419

1520
steps:
16-
- uses: actions/checkout@v4
17-
- name: Build 1.9.2 Docker image
18-
run: cd diann-1.9.2/; docker build . --file Dockerfile --tag diann:1.9.2
19-
- name: Build 2.0 Docker image
20-
run: cd diann-2.0/; docker build . --file Dockerfile --tag diann:2.0
21+
- name: Checkout repository
22+
uses: actions/checkout@v4
23+
24+
- name: Set up Docker Buildx
25+
uses: docker/setup-buildx-action@v3
26+
27+
- name: Build DiaNN 1.9.2 image
28+
uses: docker/build-push-action@v5
29+
with:
30+
context: ./diann-1.9.2
31+
push: false
32+
tags: diann:1.9.2
33+
cache-from: type=gha
34+
cache-to: type=gha,mode=max
35+
36+
- name: Build DiaNN 2.0 image
37+
uses: docker/build-push-action@v5
38+
with:
39+
context: ./diann-2.0
40+
push: false
41+
tags: diann:2.0
42+
cache-from: type=gha
43+
cache-to: type=gha,mode=max

diann-1.9.2/Dockerfile

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
FROM ubuntu:22.04
2+
3+
# Some metadata
4+
LABEL base_image="ubuntu:22.04"
5+
LABEL version="2"
6+
LABEL software="diann"
7+
LABEL software.version="1.9.2"
8+
LABEL about.summary="DIA-NN - a universal software for data-independent acquisition (DIA) proteomics data processing."
9+
LABEL about.home="https://github.com/vdemichev/DiaNN"
10+
LABEL about.documentation="https://github.com/vdemichev/DiaNN"
11+
LABEL about.license_file="https://github.com/vdemichev/DiaNN/LICENSE.txt"
12+
LABEL about.tags="Proteomics"
13+
LABEL maintainer="Yasset Perez-Riverol <ypriverol@gmail.com>"
14+
15+
ENV DEBIAN_FRONTEND=noninteractive
16+
17+
# Update package lists and ensure package versions are up to date, Install necessary packages
18+
RUN apt-get update && apt-get install -y --no-install-recommends \
19+
wget \
20+
unzip \
21+
libgomp1 \
22+
locales && \
23+
rm -rf /var/lib/apt/lists/*
24+
25+
# Configure locale to avoid runtime errors
26+
RUN locale-gen en_US.UTF-8 && \
27+
update-locale LANG=en_US.UTF-8
28+
29+
# Set environment variables for locale
30+
ENV LANG=en_US.UTF-8
31+
ENV LANGUAGE=en_US:en
32+
ENV LC_ALL=en_US.UTF-8
33+
34+
# Download and install DIA-NN
35+
RUN wget --no-check-certificate https://github.com/vdemichev/DiaNN/releases/download/1.9.2/diann-1.9.2.Linux.zip -O /tmp/diann-1.9.2.Linux.zip && \
36+
unzip /tmp/diann-1.9.2.Linux.zip -d /usr/ && \
37+
rm /tmp/diann-1.9.2.Linux.zip
38+
39+
# Remove unnecessary packages
40+
RUN apt-get remove -y wget unzip && apt-get autoremove -y && apt-get clean && \
41+
rm -rf /var/lib/apt/lists/*
42+
43+
# Set appropriate permissions for the DIA-NN folder
44+
RUN chmod +x /usr/diann-1.9.2/diann-linux
45+
46+
# Create a symbolic link and add to PATH
47+
RUN ln -s /usr/diann-1.9.2/diann-linux /usr/diann-1.9.2/diann
48+
ENV PATH="$PATH:/usr/diann-1.9.2"
49+
50+
WORKDIR /data/
51+
52+
# NOTE: It is entirely the user's responsibility to ensure compliance with DIA-NN license terms.
53+
# Please review the licensing terms for DIA-NN before using or distributing this Docker image.

0 commit comments

Comments
 (0)