From 1282878f0f3b6d6fd306139751453ddd6166cba3 Mon Sep 17 00:00:00 2001 From: Chris Flerin Date: Thu, 1 Apr 2021 17:04:21 +0200 Subject: [PATCH] Update single_cell_toolkit Docker image - Use zlib-ng base image (#325) - Include saturation script (#332), and python 3.7 install --- src/singlecelltoolkit/Dockerfile | 63 +++++++++++--------------------- 1 file changed, 22 insertions(+), 41 deletions(-) diff --git a/src/singlecelltoolkit/Dockerfile b/src/singlecelltoolkit/Dockerfile index f5b2d519..d709a38b 100644 --- a/src/singlecelltoolkit/Dockerfile +++ b/src/singlecelltoolkit/Dockerfile @@ -1,39 +1,26 @@ -FROM ubuntu:20.04 +FROM vibsinglecellnf/samtools:1.12 ENV DEBIAN_FRONTEND=noninteractive -RUN BUILDPKGS="autoconf automake make gcc perl zlib1g-dev libbz2-dev liblzma-dev libcurl4-gnutls-dev libssl-dev libncurses5-dev \ - git \ - libhts-dev \ - curl \ - wget" && \ - apt-get update && \ - apt-get install -y apt-utils debconf locales locales-all ca-certificates && dpkg-reconfigure locales && \ - apt-get install -y --no-install-recommends $BUILDPKGS && \ - apt-get install -y --no-install-recommends clang python3 llvm-6.0 pigz +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + python3 \ + python3-venv \ + wget && \ + update-alternatives --install /usr/bin/python python /usr/bin/python3.7 100 -# install htslib -ENV HTSLIB_VERSION 1.11 -RUN curl -L -o /tmp/htslib-${HTSLIB_VERSION}.tar.bz2 \ - https://github.com/samtools/htslib/releases/download/${HTSLIB_VERSION}/htslib-${HTSLIB_VERSION}.tar.bz2 && \ - mkdir -p /tmp/htslib-${HTSLIB_VERSION} && \ - tar jxvf /tmp/htslib-${HTSLIB_VERSION}.tar.bz2 -C /tmp/htslib-${HTSLIB_VERSION} --strip-components 1 && \ - cd /tmp/htslib-${HTSLIB_VERSION} && \ - ./configure && \ - make && \ - make install && \ - cd .. && rm -rf htslib-${HTSLIB_VERSION} +RUN python -m venv /opt/venv +# Make sure we use the virtualenv: +ENV PATH="/opt/venv/bin:$PATH" -# install samtools -ENV SAMTOOLS_VERSION 1.11 -RUN curl -L -o /tmp/samtools-${SAMTOOLS_VERSION}.tar.bz2 \ - https://github.com/samtools/samtools/releases/download/${SAMTOOLS_VERSION}/samtools-${SAMTOOLS_VERSION}.tar.bz2 && \ - mkdir -p /tmp/samtools-${SAMTOOLS_VERSION} && \ - tar jxvf /tmp/samtools-${SAMTOOLS_VERSION}.tar.bz2 -C /tmp/samtools-${SAMTOOLS_VERSION} --strip-components 1 && \ - cd /tmp/samtools-${SAMTOOLS_VERSION} && \ - ./configure && \ - make && \ - make install && \ - cd .. && rm -rf samtools-${SAMTOOLS_VERSION} +RUN pip install --no-cache-dir --upgrade pip wheel && \ + pip install --no-cache-dir \ + pandas \ + scipy \ + uncertainties \ + typing \ + pathlib \ + matplotlib \ + numpy # install seq (https://github.com/seq-lang/seq/): ENV SEQ_VERSION=0.9.11 @@ -51,13 +38,7 @@ RUN git clone --depth=1 https://github.com/aertslab/single_cell_toolkit.git /opt ENV seq_root_dir=/opt/seq ENV PATH="/opt/single_cell_toolkit:${PATH}" -# final set of packages for usability -RUN apt-get -y update && \ - apt-get -y --no-install-recommends install \ - procps \ - bash-completion \ - less && \ - apt-get remove --purge -y $BUILDPKGS && \ - rm -rf /var/cache/apt/* && \ - rm -rf /var/lib/apt/lists/* +RUN rm -rf /var/cache/apt/* && \ + rm -rf /var/lib/apt/lists/* && \ + ldconfig