-
Notifications
You must be signed in to change notification settings - Fork 82
/
Dockerfile
70 lines (60 loc) · 3.1 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
67
68
69
70
# How to build and deploy the Docker image:
# docker build --build-arg VER=1.2.3 --no-cache -t ecogenomic/gtdbtk:latest -t ecogenomic/gtdbtk:1.2.3 .
# docker run -v /host/gtdbtk_io:/data -v /host/release_data:/refdata ecogenomic/gtdbtk classify_wf --genome_dir /data/genomes --out_dir /data/output
# docker push ecogenomic/gtdbtk:latest && sudo docker push ecogenomic/gtdbtk:1.2.3
FROM python:3.8-slim-bullseye
ARG VER
# ---------------------------------------------------------------------------- #
# --------------------- INSTALL HMMER, PYTHON3, FASTTREE---------------------- #
# ---------------------------------------------------------------------------- #
RUN apt-get update -y -m && \
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --no-install-suggests -y \
wget \
libgomp1 \
libgsl25 \
libgslcblas0 \
build-essential \
curl \
hmmer=3.* \
mash=2.2.* \
prodigal=1:2.6.* \
fasttree=2.1.* \
unzip && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
ln -s /usr/bin/fasttreeMP /usr/bin/FastTreeMP && \
curl https://sh.rustup.rs -sSf | sh -s -- -y
ENV PATH="/root/.cargo/bin:${PATH}"
# ---------------------------------------------------------------------------- #
# ----------------------------- INSTALL PPLACER ------------------------------ #
# ---------------------------------------------------------------------------- #
RUN wget https://github.com/matsen/pplacer/releases/download/v1.1.alpha19/pplacer-linux-v1.1.alpha19.zip -q && \
unzip pplacer-linux-v1.1.alpha19.zip && \
mv pplacer-Linux-v1.1.alpha19/* /usr/bin && \
rm pplacer-linux-v1.1.alpha19.zip && \
rm -rf pplacer-Linux-v1.1.alpha19
# ---------------------------------------------------------------------------- #
# ------------------------------ INSTALL SKANI ------------------------------- #
# ---------------------------------------------------------------------------- #
RUN wget https://github.com/bluenote-1577/skani/archive/refs/tags/v0.2.1.tar.gz
RUN tar -xvf v0.2.1.tar.gz
RUN cd skani-0.2.1 && cargo install --path . --root /usr
RUN chmod +x /usr/bin/skani
RUN cd ../
RUN rm -rf v0.2.1.tar.gz skani-0.2.1
# ---------------------------------------------------------------------------- #
# --------------------- SET GTDB-TK MOUNTED DIRECTORIES ---------------------- #
# ---------------------------------------------------------------------------- #
RUN mkdir /refdata && \
mkdir /data
ENV GTDBTK_DATA_PATH="/refdata/"
# ---------------------------------------------------------------------------- #
# --------------------------- INSTALL PIP PACKAGES --------------------------- #
# ---------------------------------------------------------------------------- #
RUN python -m pip install --upgrade pip && \
python -m pip install gtdbtk==${VER}
# ---------------------------------------------------------------------------- #
# ---------------------------- SET THE ENTRYPOINT ---------------------------- #
# ---------------------------------------------------------------------------- #
ENTRYPOINT ["gtdbtk"]
CMD ["--help"]