-
Notifications
You must be signed in to change notification settings - Fork 9
/
Dockerfile
60 lines (49 loc) · 1.6 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
FROM python:3.10
LABEL maintainer="Jeff Bowman"
# Install packages
RUN apt-get update && \
apt-get install -qy --no-install-recommends \
make \
git \
cmake \
autotools-dev \
libtool \
flex \
bison \
cmake \
automake \
autoconf \
build-essential \
git \
zip
# Install python dependencies, including external python tools
RUN pip3 install numpy==1.26.3 biopython==1.83 joblib==1.3.2 pandas==2.2.0 seqmagick==0.8.6 termcolor==2.4.0
RUN cd /
# Install RAxML-ng
RUN wget --no-verbose https://github.com/amkozlov/raxml-ng/releases/download/0.9.0/raxml-ng_v0.9.0_linux_x86_64.zip && \
unzip raxml-ng_v0.9.0_linux_x86_64.zip && \
rm raxml-ng_v0.9.0_linux_x86_64.zip
# Install infernal
RUN wget --no-verbose http://eddylab.org/infernal/infernal-1.1.2-linux-intel-gcc.tar.gz && \
tar -xzvf infernal-1.1.2-linux-intel-gcc.tar.gz && \
mv infernal-1.1.2-linux-intel-gcc infernal && \
rm infernal-1.1.2-linux-intel-gcc.tar.gz
# Install gappa
RUN git clone --recursive https://github.com/lczech/gappa.git && \
make -C /gappa
# Install epa-ng
RUN git clone https://github.com/Pbdas/epa-ng.git && \
make -C /epa-ng
# Modify PATH
ENV PATH="/pplacer:${PATH}"
ENV PATH="/.local/bin:${PATH}"
ENV PATH="/infernal/binaries:${PATH}"
ENV PATH="/infernal/easel:${PATH}"
ENV PATH="/raxml-ng:${PATH}"
ENV PATH="/paprica:${PATH}"
ENV PATH="/epa-ng/bin:${PATH}"
ENV PATH="/gappa/bin:${PATH}"
# Install paprica
RUN git clone https://github.com/bowmanjeffs/paprica.git && cd paprica && chmod a+x *py && chmod a+x *sh
# Run bash on container startup
CMD "/bin/bash"