-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathDockerfile
67 lines (50 loc) · 1.97 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#==============================================================================================
FROM python:3.7 AS build
#------------------------------------------------------------------
# ProABC-2 uses uses stderr to check for errors for virtualization,
# some errors are printed to stderr and then proabc-2 fails.
# This is a workaround to avoid this.
ENV KMP_AFFINITY=noverbose
#------------------------------------------------------------------
# Install dependencies
RUN apt-get update && \
apt-get install -y --no-install-recommends \
build-essential \
&& \
apt-get clean && rm -rf /var/lib/apt/lists/*
#------------------------------------------------------------------
# Install IGBLAST
WORKDIR /opt/software
RUN wget ftp://ftp.ncbi.nih.gov/blast/executables/igblast/release/1.14.0/ncbi-igblast-1.14.0-x64-linux.tar.gz && \
tar -xvf ncbi-igblast-1.14.0-x64-linux.tar.gz
ENV IGBLAST_PATH=/opt/software/ncbi-igblast-1.14.0/bin
ENV IGDATA=/opt/software/ncbi-igblast-1.14.0
# Install HMMER
WORKDIR /opt/software
RUN wget http://eddylab.org/software/hmmer/hmmer.tar.gz && \
tar zxf hmmer.tar.gz
WORKDIR /opt/software/hmmer-3.4
RUN ./configure --prefix=`pwd` && \
make && \
# make check && \
make install && \
(cd easel; make install)
ENV HMMER_PATH=/opt/software/hmmer-3.4/bin
# Install Poetry
RUN pip install --no-cache-dir poetry==1.5.1 \
&& poetry config virtualenvs.create false
#------------------------------------------------------------------
# Install proABC-2
WORKDIR /opt/software/proABC-2
COPY . .
RUN poetry install --only main
#==============================================================================================
FROM build AS prod
WORKDIR /data
ENTRYPOINT ["proabc2"]
#==============================================================================================
FROM build AS test
WORKDIR /opt/software/proABC-2
RUN poetry install
ENTRYPOINT [""]
#==============================================================================================