https://github.com/connor-lab/ncov2019-artic-nf
Raw File
Tip revision: aaba142877d88ca9e3dfdbd21e5670213ac12fde authored by Sara Rey on 28 April 2020, 17:54:17 UTC
dockerfile created
Tip revision: aaba142
Dockerfile.illuminavariants
# To build: docker build -t illuminavariants:v0.1 - < Dockerfile.illuminavariants

FROM debian:buster

ENV pengu_software_version_FastQC=0.11.7 \
pengu_software_version_TrimGalore=0.6.5 \
pengu_software_version_htslib=1.10.2 \
pengu_software_version_samtools=1.10 \
pengu_software_version_bcftools=1.10.2 \
pengu_software_version_bwa=0.7.17 \
pengu_software_version_ivar=1.2 \
pengu_software_version_bedtools=2.29.2 \
pengu_software_version_python=3.6.10 \
pengu_software_version_lofreq=2.1.4 \
pengu_software_version_python=3.7.7 \
pengu_software_version_pyvcf=0.6.8 \
pengu_software_version_biopython=1.68 \
pengu_software_version_pandas=1.0.3 \ 
pengu_software_version_matplotlib=3.1.3 \
pengu_software_version_cutadapt=2.10 \
pengu_software_version_pysam=0.15.3 

RUN apt-get update && apt-get install -y git bzip2 curl wget g++ make zlib1g-dev libbz2-dev unzip \
autoconf libncurses5-dev openjdk-11-jre-headless libfindbin-libs-perl libssl-dev libcurl4-openssl-dev \
libffi-dev liblzma-dev

RUN wget https://www.bioinformatics.babraham.ac.uk/projects/fastqc/fastqc_v${pengu_software_version_FastQC}.zip \
&& unzip fastqc_v${pengu_software_version_FastQC}.zip \
&& chmod +x FastQC/fastqc \
&& mv FastQC /usr/local/bin \
&& rm -r fastqc*

ENV PATH ${PATH}:/usr/local/bin/FastQC/

RUN wget -O trim_galore.tar.gz https://github.com/FelixKrueger/TrimGalore/archive/${pengu_software_version_TrimGalore}.tar.gz \
&& tar -xzf trim_galore.tar.gz \
&& mv TrimGalore-${pengu_software_version_TrimGalore}/trim_galore /usr/local/bin \
&& rm -r trim_galore*

# Install htslib
WORKDIR /
RUN curl -fsSL "https://github.com/samtools/htslib/releases/download/${pengu_software_version_htslib}/htslib-${pengu_software_version_htslib}.tar.bz2" | tar -xj
WORKDIR htslib-${pengu_software_version_htslib}
RUN ./configure && make && make install
ENV PATH "$PATH:/htslib-${pengu_software_version_htslib}"
RUN ln -s /usr/local/lib/libhts.so.3 /usr/lib/

# Install samtools
WORKDIR /
RUN curl -fsSL "https://github.com/samtools/samtools/releases/download/${pengu_software_version_samtools}/samtools-${pengu_software_version_samtools}.tar.bz2" | tar -xj
WORKDIR samtools-${pengu_software_version_samtools}
RUN ./configure && make && make install
ENV PATH "$PATH:/samtools-${pengu_software_version_samtools}"

# Install bcftools
WORKDIR /
RUN curl -fsSL "https://github.com/samtools/bcftools/releases/download/${pengu_software_version_bcftools}/bcftools-${pengu_software_version_bcftools}.tar.bz2" | tar -xj
WORKDIR bcftools-${pengu_software_version_bcftools}
RUN ./configure && make && make install
ENV PATH "$PATH:/bcftools-${pengu_software_version_bcftools}"

# Install python
WORKDIR /
RUN curl -fsSL "https://www.python.org/ftp/python/${pengu_software_version_python}/Python-${pengu_software_version_python}.tgz" | tar -xz
WORKDIR /Python-${pengu_software_version_python}
RUN ./configure && make && make install
ENV PATH "$PATH:/Python-${pengu_software_version_python}"

# Make requirements file on the fly (copy didn't work under certain conditions (contextless build) and was concerned about compatibility with Singularity- may need to change later)
RUN printf '%s\n' \
pandas==${pengu_software_version_pandas} \
matplotlib==${pengu_software_version_matplotlib} \
biopython==${pengu_software_version_biopython} \
pyvcf==${pengu_software_version_pyvcf} \
cutadapt==${pengu_software_version_cutadapt} \
pysam==${pengu_software_version_pysam} \
> requirements.txt

# install python modules
RUN pip3 install -r requirements.txt

ENV PATH "$PATH:/Python-${pengu_software_version_python}"

# Install bedtools
WORKDIR /
RUN curl -fsSL "https://github.com/arq5x/bedtools2/releases/download/v${pengu_software_version_bedtools}/bedtools-${pengu_software_version_bedtools}.tar.gz" | tar -xz
RUN cd bedtools2 && make
ENV PATH "$PATH:/bedtools2/bin"

# Install BWA
WORKDIR /
RUN curl -fsSL "https://github.com/lh3/bwa/releases/download/v${pengu_software_version_bwa}/bwa-${pengu_software_version_bwa}.tar.bz2" | tar -xj
RUN cd bwa-${pengu_software_version_bwa} && make
ENV PATH "$PATH:/bwa-${pengu_software_version_bwa}"

# Install ivar
WORKDIR /
RUN curl -fsSL "https://github.com/andersen-lab/ivar/archive/v${pengu_software_version_ivar}.zip" -o ivar.zip && unzip ivar.zip
WORKDIR ivar-${pengu_software_version_ivar}
RUN ./autogen.sh && ./configure && make && make install
ENV PATH "$PATH:/ivar-{pengu_software_version_ivar}"

# Install lofreq
WORKDIR /
RUN curl -fsSL https://github.com/CSB5/lofreq/archive/v${pengu_software_version_lofreq}.tar.gz | tar -xz
WORKDIR lofreq-${pengu_software_version_lofreq}
RUN ./bootstrap && ./configure --with-htslib=/usr/lib64/ && make && make install
back to top