|  | 
|  | 1 | +FROM ubuntu:focal | 
|  | 2 | + | 
|  | 3 | + | 
|  | 4 | +LABEL maintainer="[email protected] " \ | 
|  | 5 | +about.summary="container for the clockwork workflow" | 
|  | 6 | + | 
|  | 7 | +ENV samtools_version=1.12 \ | 
|  | 8 | +htslib_version=1.12 \ | 
|  | 9 | +bcftools_version=1.12 \ | 
|  | 10 | +minimap2_version=2.17 \ | 
|  | 11 | +picard_version=2.18.16 \ | 
|  | 12 | +gramtools_version=8af53f6c8c0d72ef95223e89ab82119b717044f2 \ | 
|  | 13 | +vt_version=2187ff6347086e38f71bd9f8ca622cd7dcfbb40c \ | 
|  | 14 | +minos_version=0.11.0 \ | 
|  | 15 | +cortex_version=3a235272e4e0121be64527f01e73f9e066d378d3 \ | 
|  | 16 | +vcftools_version=0.1.15 \ | 
|  | 17 | +mccortex_version=97aba198d632ee98ac1aa496db33d1a7a8cb7e51 \ | 
|  | 18 | +stampy_version=1.0.32r3761 \ | 
|  | 19 | +python_version=3.6.5 \ | 
|  | 20 | +clockwork_version=2364dec4cbf25c844575e19e8fe0a319d10721b5 \ | 
|  | 21 | +gatk_version=4.6.0.0 | 
|  | 22 | + | 
|  | 23 | +ENV PACKAGES="procps curl git build-essential wget zlib1g-dev pkg-config jq r-base-core rsync autoconf libncurses-dev libbz2-dev liblzma-dev libcurl4-openssl-dev cmake tabix libvcflib-tools libssl-dev software-properties-common perl locales locales-all" \ | 
|  | 24 | +PYTHON="python2.7 python-dev" | 
|  | 25 | + | 
|  | 26 | +COPY bin/ /opt/bin/ | 
|  | 27 | +ENV PATH=/opt/bin:$PATH | 
|  | 28 | + | 
|  | 29 | +RUN apt-get update \ | 
|  | 30 | +&& DEBIAN_FRONTEND=noninteractive apt-get install -y $PACKAGES $PYTHON \ | 
|  | 31 | +&& curl -fsSL https://www.python.org/ftp/python/${python_version}/Python-${python_version}.tgz | tar -xz \ | 
|  | 32 | +&& cd Python-${python_version} \ | 
|  | 33 | +&& ./configure --enable-optimizations \ | 
|  | 34 | +&& make altinstall \ | 
|  | 35 | +&& cd .. \ | 
|  | 36 | +&& ln -s /usr/local/bin/python3.6 /usr/local/bin/python3 \ | 
|  | 37 | +&& ln -s /usr/local/bin/pip3.6 /usr/local/bin/pip3 \ | 
|  | 38 | +&& pip3 install --upgrade pip \ | 
|  | 39 | +&& pip3 install 'cluster_vcf_records==0.13.1' pysam setuptools  awscli \ | 
|  | 40 | +&& apt-get update | 
|  | 41 | + | 
|  | 42 | +#update jdk | 
|  | 43 | +RUN wget https://download.java.net/java/GA/jdk18/43f95e8614114aeaa8e8a5fcf20a682d/36/GPL/openjdk-18_linux-x64_bin.tar.gz | 
|  | 44 | +RUN tar -xvf openjdk-18_linux-x64_bin.tar.gz | 
|  | 45 | +RUN mv jdk-18* /opt/ | 
|  | 46 | +ENV JAVA_HOME=/opt/jdk-18 | 
|  | 47 | +ENV PATH=$PATH:$JAVA_HOME/bin | 
|  | 48 | + | 
|  | 49 | + | 
|  | 50 | +RUN curl -fsSL https://github.com/samtools/samtools/archive/${samtools_version}.tar.gz | tar -xz \ | 
|  | 51 | +&& curl -fsSL https://github.com/samtools/htslib/releases/download/${htslib_version}/htslib-${htslib_version}.tar.bz2 | tar -xj \ | 
|  | 52 | +&& make -C samtools-${samtools_version} -j HTSDIR=../htslib-${htslib_version} \ | 
|  | 53 | +&& make -C samtools-${samtools_version} -j HTSDIR=../htslib-${htslib_version} prefix=/usr/local install \ | 
|  | 54 | +&& rm -r samtools-${samtools_version} \ | 
|  | 55 | +&& curl -fsSL https://github.com/samtools/bcftools/archive/refs/tags/${bcftools_version}.tar.gz | tar -xz \ | 
|  | 56 | +&& make -C bcftools-${bcftools_version} -j HTSDIR=../htslib-${htslib_version} \ | 
|  | 57 | +&& make -C bcftools-${bcftools_version} -j HTSDIR=../htslib-${htslib_version} prefix=/usr/local install \ | 
|  | 58 | +&& rm -r bcftools-${bcftools_version} | 
|  | 59 | + | 
|  | 60 | + | 
|  | 61 | +RUN curl -fsSL minimap2-${minimap2_version}.tar.gz https://github.com/lh3/minimap2/archive/v${minimap2_version}.tar.gz | tar -xz \ | 
|  | 62 | +&& cd minimap2-${minimap2_version} \ | 
|  | 63 | +&& make \ | 
|  | 64 | +&& chmod +x minimap2 \ | 
|  | 65 | +&& mv minimap2 /usr/local/bin \ | 
|  | 66 | +&& cd .. \ | 
|  | 67 | +&& rm -r minimap2-${minimap2_version} \ | 
|  | 68 | +&& wget https://github.com/broadinstitute/picard/releases/download/${picard_version}/picard.jar -O /usr/local/bin/picard.jar | 
|  | 69 | + | 
|  | 70 | + | 
|  | 71 | +RUN git clone https://github.com/atks/vt.git vt-git \ | 
|  | 72 | +&& cd vt-git \ | 
|  | 73 | +&& git checkout ${vt_version} \ | 
|  | 74 | +&& make \ | 
|  | 75 | +&& cd .. \ | 
|  | 76 | +&& mv vt-git/vt /usr/local/bin \ | 
|  | 77 | +&& pip3 install tox "six>=1.14.0" \ | 
|  | 78 | +&& git clone https://github.com/iqbal-lab-org/gramtools \ | 
|  | 79 | +&& cd gramtools \ | 
|  | 80 | +&& git checkout ${gramtools_version} \ | 
|  | 81 | +&& pip3 install . \ | 
|  | 82 | +&& cd .. \ | 
|  | 83 | +&& pip3 install cython \ | 
|  | 84 | +&& pip3 install git+https://github.com/iqbal-lab-org/minos@v${minos_version} | 
|  | 85 | + | 
|  | 86 | + | 
|  | 87 | +RUN git clone --recursive https://github.com/iqbal-lab/cortex.git \ | 
|  | 88 | +&& cd cortex \ | 
|  | 89 | +&& git checkout ${cortex_version} \ | 
|  | 90 | +&& bash install.sh \ | 
|  | 91 | +&& make NUM_COLS=1 cortex_var \ | 
|  | 92 | +&& make NUM_COLS=2 cortex_var \ | 
|  | 93 | +&& cd .. \ | 
|  | 94 | +&& mkdir bioinf-tools \ | 
|  | 95 | +&& cd bioinf-tools \ | 
|  | 96 | +&& curl -fsSL http://www.well.ox.ac.uk/~gerton/software/Stampy/stampy-${stampy_version}.tgz | tar -xz \ | 
|  | 97 | +&& make -C stampy-* \ | 
|  | 98 | +&& cp -s stampy-*/stampy.py . \ | 
|  | 99 | +&& curl -fsSL https://github.com/vcftools/vcftools/releases/download/v${vcftools_version}/vcftools-${vcftools_version}.tar.gz | tar -xz \ | 
|  | 100 | +&& cd vcftools-${vcftools_version} \ | 
|  | 101 | +&& ./configure --prefix $PWD/install \ | 
|  | 102 | +&& make && make install \ | 
|  | 103 | +&& ln -s src/perl/ . \ | 
|  | 104 | +&& cd .. \ | 
|  | 105 | +&& git clone --recursive https://github.com/mcveanlab/mccortex \ | 
|  | 106 | +&& cd mccortex \ | 
|  | 107 | +&& git checkout ${mccortex_version} \ | 
|  | 108 | +&& make all \ | 
|  | 109 | +&& cd .. \ | 
|  | 110 | +&& cp -s mccortex/bin/mccortex31 . \ | 
|  | 111 | +&& cd .. \ | 
|  | 112 | +&& git clone https://github.com/iqbal-lab-org/clockwork \ | 
|  | 113 | +&& cd clockwork \ | 
|  | 114 | +&& git checkout ${clockwork_version} \ | 
|  | 115 | +&& cd python \ | 
|  | 116 | +&& pip3 install . \ | 
|  | 117 | +&& chmod +x scripts/clockwork | 
|  | 118 | + | 
|  | 119 | +RUN wget https://github.com/broadinstitute/gatk/releases/download/${gatk_version}/gatk-${gatk_version}.zip -O /tmp/gatk-${gatk_version}.zip\ | 
|  | 120 | +	&& unzip /tmp/gatk-${gatk_version}.zip -d /opt/ \ | 
|  | 121 | +	&& rm /tmp/gatk-${gatk_version}.zip -f | 
|  | 122 | + | 
|  | 123 | +ENV CLOCKWORK_CORTEX_DIR=/cortex \ | 
|  | 124 | +PATH=${PATH}:/clockwork/python/scripts:/opt/gatk-${gatk_version} \ | 
|  | 125 | +PICARD_JAR=/usr/local/bin/picard.jar | 
|  | 126 | + | 
|  | 127 | +ENV LC_ALL en_US.UTF-8 \ | 
|  | 128 | +LANG en_US.UTF-8 \ | 
|  | 129 | +LANGUAGE en_US.UTF-8 | 
|  | 130 | + | 
|  | 131 | + | 
0 commit comments