-
Notifications
You must be signed in to change notification settings - Fork 119
/
Dockerfile
59 lines (47 loc) · 2 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
FROM mambaorg/micromamba:1.5.8 as app
ARG TOSTADAS_VER="3.1.0"
USER root
WORKDIR /
LABEL authors="Cole and Ankush Gupta"
LABEL base.image="mambaorg/micromamba:1.5.8"
LABEL dockerfile.version="2"
LABEL software="tostadas"
LABEL software.version=$TOSTADAS_VER
LABEL description="Image for the TOSTADAS: Toolkit for Open Sequence Triage, Annotation and DAtabase Submission pipeline"
LABEL website="https://github.com/CDCgov/tostadas"
LABEL license="https://github.com/CDCgov/tostadas/LICENSE"
LABEL maintainer="Ankush Gupta"
LABEL maintainer.email="[email protected]"
LABEL maintainer2="Kyle O'Connell"
LABEL maintainer2.email="[email protected]"
LABEL maintainer3="Cole Tindall"
LABEL maintainer3.email="[email protected]"
RUN apt-get update && apt-get install -y --no-install-recommends \
wget \
ca-certificates \
procps && \
apt-get autoclean && rm -rf /var/lib/apt/lists/*
# download tostadas repo, move to /tostadas, and create /data
RUN wget https://github.com/CDCgov/tostadas/archive/refs/tags/v${TOSTADAS_VER}.tar.gz && \
tar -xvf v${TOSTADAS_VER}.tar.gz && \
rm v${TOSTADAS_VER}.tar.gz && \
mv tostadas-${TOSTADAS_VER} tostadas && \
mkdir /data
# use mamba to install conda packages
RUN micromamba env create -f tostadas/environment.yml && \
micromamba clean -a -y && \
echo "source activate tostadas" > ~/.bashrc && \
rm -rf /tostadas
ENV PATH=/opt/conda/envs/tostadas/bin:/opt/conda/envs/env/bin:$PATH \
LC_ALL=C.UTF-8
WORKDIR /data
##### ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #####
###### Step 2. Set up the testing stage. #####
###### The docker image is built to the 'test' stage before merging, but #####
###### the test stage (or any stage after 'app') will be lost. #####
###### ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #####
# A second FROM insruction creates a new stage
FROM app as test
RUN liftoff --version && \
samtools --version && \
python --version