Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dockerfile tweaks for singularity support and download url updates #5

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 28 additions & 35 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,54 +1,47 @@
FROM ubuntu:latest
MAINTAINER Dave Roe <droe@nmdp.org>

# install stuff
RUN apt-get update && apt-get install -qyy curl git make vim cmake \
# apt stuff
RUN apt-get update \
&& apt-get install -qyy curl git make vim cmake \
gcc g++ unzip subversion gzip openjdk-8-jdk openjdk-8-doc groovy wget \
zlib1g-dev gnuplot lynx maven \
bzip2 libbz2-dev liblzma-dev libncurses5-dev libncursesw5-dev \
&& apt-get clean \
&& cd /opt && git clone https://github.com/droe-nmdp/kpi.git \
&& mkdir -p /opt/kpi/raw \
&& mkdir -p /opt/bin \
&& cd /opt/bin && curl -fsSL get.nextflow.io | /bin/bash \
&& cd /opt/bin && wget https://github.com/refresh-bio/KMC/releases/download/v3.0.0/KMC3.linux.tar.gz \
&& gunzip KMC3.linux.tar.gz && tar -xvf KMC3.linux.tar && rm -f KMC3.linux.tar \
# && cd /opt && wget https://sourceforge.net/projects/bbmap/files/latest/download \
# && mv download BBMap.tar && tar -xvzf BBMap.tar && rm BBMap.tar \
&& mkdir -p /opt/jars \
# && cd /opt && git clone https://github.com/marbl/canu.git && cd canu/src \
# && make -j 2 \
&& cd /opt/jars \
&& wget http://mirrors.sorengard.com/apache//commons/math/binaries/commons-math3-3.6.1-bin.tar.gz \
&& gunzip commons-math3-3.6.1-bin.tar.gz && tar -xvf commons-math3-3.6.1-bin.tar \
&& rm -f /opt/jars/commons-math3-3.6.1-bin.tar \
# && cd /opt/ && wget https://github.com/samtools/htslib/releases/download/1.8/htslib-1.8.tar.bz2 \
# && tar -xjvf htslib-1.8.tar.bz2 && cd htslib-1.8 && make && make install \
# && cd /opt/ && wget https://github.com/samtools/bcftools/releases/download/1.8/bcftools-1.8.tar.bz2 \
# && tar -xjvf bcftools-1.8.tar.bz2 && cd bcftools-1.8 && make && make install \
# && cd /opt/ && wget https://github.com/samtools/samtools/releases/download/1.8/samtools-1.8.tar.bz2 \
# && bunzip2 samtools-1.8.tar.bz2 \
# && tar -xvf samtools-1.8.tar && cd samtools-1.8 && make && make install \
# && rm -f /opt/*.bz2 /opt/*.tar* \
bzip2 libbz2-dev liblzma-dev libncurses5-dev libncursesw5-dev \
&& apt-get clean

# install stuff
ENV TMPDIR /tmp
RUN cd /opt \
&& git clone https://github.com/droe-nmdp/kpi.git \
&& mkdir -p /opt/kpi/raw /opt/bin \
&& cd /opt/bin \
&& wget -qO- http://get.nextflow.io | bash \
&& sed -i s/"curl -fsSL"/"curl -fsSLk"/ /opt/bin/nextflow \
&& chmod 755 /opt/bin/nextflow \
&& /opt/bin/nextflow \
&& wget https://github.com/refresh-bio/KMC/releases/download/v3.0.0/KMC3.linux.tar.gz \
&& tar -zxvf KMC3.linux.tar.gz \
&& rm -f KMC3.linux.tar.gz \
&& mkdir -p /opt/jars \
&& cd /opt/jars \
&& wget http://www.apache.org/dist/commons/math/binaries/commons-math3-3.6.1-bin.tar.gz \
&& tar -zxvf commons-math3-3.6.1-bin.tar.gz \
&& rm -f /opt/jars/commons-math3-3.6.1-bin.tar.gz

# google guava
ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/
RUN cd /opt && git clone https://github.com/google/guava.git \
&& cd guava/guava/ && mvn install
RUN cd /opt \
&& git clone https://github.com/google/guava.git \
&& cd guava/guava \
&& mvn install

# env vars
ENV NXF_OPTS "-Xms4G -Xmx20G"
ENV LD_LIBRARY_PATH /opt/lib:$LD_LIBRARY_PATH

# kpi source
RUN mkdir -p /opt/kpi/input /opt/kpi/output /opt/kpi/src
ENV PATH /opt/bin:$PATH
ENV PATH /opt/kpi:$PATH
ENV PATH /opt/kpi/src:$PATH
ENV PATH /opt/bbmap:$PATH
ENV PATH /opt/canu/Linux-amd64/bin:$PATH
ENV PATH /opt/bin:/opt/kpi:/opt/kpi/src:/opt/bbmap:/opt/canu/Linux-amd64/bin:$PATH
ENV CLASSPATH /opt/guava/guava/target/guava-HEAD-jre-SNAPSHOT.jar:/opt/jars/commons-math3-3.6.1/commons-math3-3.6.1.jar:$CLASSPATH

#CMD ["/bin/bash"]
CMD ["/opt/kpi/main.nf"]