-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
90 lines (81 loc) · 2.96 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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# modeled after StaPH-B/docker-builds template
# Software installation, no database files
FROM mambaorg/micromamba:1.4.9
# build and run as root users since micromamba image has 'mambauser' set as the $USER
USER root
# set workdir to default for building; set to /data at the end
WORKDIR /
# Version arguments
# ARG variables only persist during build time
ARG MYCOSNP_SOFTWARE_VERSION="1.5"
ARG MYCOSNP_SRC_URL=https://github.com/CDCgov/mycosnp-nf/archive/refs/tags/v${MYCOSNP_SOFTWARE_VERSION}.tar.gz
# metadata labels
LABEL base.image="mambaorg/micromamba:1.4.9"
LABEL dockerfile.version="1"
LABEL software="mycosnp-wdl"
LABEL software.version=${MYCOSNP_SOFTWARE_VERSION}
LABEL description="A WDL wrapper of CDCGov/mycosnp-nf for Terra.bio"
LABEL website="https://github.com/CDCgov/mycosnp-nf"
LABEL license="https://github.com/CDCgov/mycosnp-nf/blob/master/LICENSE"
LABEL maintainer1="Robert A. Petit III"
LABEL maintainer.email1="[email protected]"
LABEL maintainer2="Kevin Libuit"
LABEL maintainer.email2="[email protected]"
# Install references
COPY data/reference/ /reference
# install dependencies; cleanup apt garbage
RUN apt-get update && apt-get install -y --no-install-recommends \
wget \
ca-certificates \
git \
procps \
libtiff5 \
bsdmainutils && \
apt-get autoclean && \
rm -rf /var/lib/apt/lists/*
RUN micromamba install -y --name base -c conda-forge -c bioconda -c defaults \
'bioconda::bcftools==1.14' \
'bioconda::bedtools==2.30.0' \
'bioconda::bwa==0.7.17' \
'bioconda::csvtk==0.23.0' \
'bioconda::faqcs==2.10' \
'bioconda::fastqc==0.11.9' \
'bioconda::fasttree==2.1.10' \
'bioconda::gatk4==4.2.5.0' \
'bioconda::iqtree==2.1.4_beta' \
'bioconda::multiqc==1.11' \
'bioconda::mummer==3.23' \
'bioconda::nextflow==22.04.0' \
'bioconda::picard==2.26.10' \
'bioconda::qualimap==2.2.2d' \
'bioconda::quicksnp==1.0.1' \
'bioconda::rapidnj==2.3.2' \
'bioconda::raxml-ng==1.0.3' \
'bioconda::samtools==1.15' \
'bioconda::seqkit==2.1.0' \
'bioconda::seqtk==1.3' \
'bioconda::snpeff==5.0' \
'bioconda::snp-dists==0.8.2' \
'bioconda::sra-tools==2.11.0' \
'bioconda::tabix==1.11' \
'conda-forge::biopython==1.78' \
'conda-forge::coreutils==9.0' \
'conda-forge::openjdk==11.0.8' \
'conda-forge::pandas==1.5.2' \
'conda-forge::pigz==2.6' \
'conda-forge::python==3.9.5' \
'conda-forge::scipy==1.8.0' \
'conda-forge::sed==4.7' && \
micromamba clean -a -y
# get the mycosnp-nf latest release
RUN wget --quiet "${MYCOSNP_SRC_URL}" && \
tar -xf v${MYCOSNP_SOFTWARE_VERSION}.tar.gz && \
rm v${MYCOSNP_SOFTWARE_VERSION}.tar.gz && \
mv -v mycosnp-nf-${MYCOSNP_SOFTWARE_VERSION} mycosnp-nf
# set the environment, add base conda/micromamba bin directory into path
# set locale settings to UTF-8
# set the environment, put new conda env in PATH by default
ENV PATH="/opt/conda/bin:${PATH}" \
LC_ALL=C.UTF-8
# set final working directory to /data
WORKDIR /data