mirror of
https://github.com/MillironX/singularity-builds.git
synced 2024-11-24 02:19:55 +00:00
Switch to Ubuntu-based image
Signed-off-by: Thomas A. Christensen II <25492070+MillironX@users.noreply.github.com>
This commit is contained in:
parent
a5b388b045
commit
12a8ac3490
2 changed files with 62 additions and 75 deletions
133
Dockerfile
133
Dockerfile
|
@ -1,9 +1,9 @@
|
||||||
FROM alpine:3.14.3
|
FROM ubuntu:focal
|
||||||
|
|
||||||
LABEL base.image="alpine:3.14.3"
|
LABEL base.image="ubuntu:focal"
|
||||||
LABEL software="NanoSim"
|
LABEL software="NanoSim"
|
||||||
LABEL software.version="3.0.2"
|
LABEL software.version="3.0.2"
|
||||||
LABEL dockerfile.version="3"
|
LABEL dockerfile.version="4"
|
||||||
LABEL description="Fast and scalable read simulator that captures the technology-specific features of ONT data."
|
LABEL description="Fast and scalable read simulator that captures the technology-specific features of ONT data."
|
||||||
LABEL website="https://github.com/bcgsc/NanoSim"
|
LABEL website="https://github.com/bcgsc/NanoSim"
|
||||||
LABEL license="https://github.com/bcgsc/NanoSim/blob/master/LICENSE"
|
LABEL license="https://github.com/bcgsc/NanoSim/blob/master/LICENSE"
|
||||||
|
@ -17,62 +17,44 @@ ARG LAST_SHA="98fc3d382ef443b4468b633d2fe90ac3d0b3c21e"
|
||||||
ARG SAMTOOLS_VERSION=1.12
|
ARG SAMTOOLS_VERSION=1.12
|
||||||
ARG GENOMETOOLS_VERSION=1.6.2
|
ARG GENOMETOOLS_VERSION=1.6.2
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
ENV DEBCONF_NONINTERACTIVE_SEEN true
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
# Install real dependencies
|
# Install real dependencies
|
||||||
apk add --repository http://dl-cdn.alpinelinux.org/alpine/edge/main \
|
apt-get update && \
|
||||||
--update --no-cache \
|
apt-get install --no-install-recommends -y \
|
||||||
bash \
|
build-essential \
|
||||||
libbz2 \
|
bzip2 \
|
||||||
ncurses \
|
ca-certificates \
|
||||||
openblas-dev \
|
curl \
|
||||||
py3-pip \
|
cython3 \
|
||||||
py3-wheel \
|
|
||||||
python3 \
|
|
||||||
cython \
|
|
||||||
xz \
|
|
||||||
zlib && \
|
|
||||||
\
|
|
||||||
# Install Python packages available from apk
|
|
||||||
apk add --repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
|
||||||
--update --no-cache \
|
|
||||||
py3-six \
|
|
||||||
py3-joblib \
|
|
||||||
py3-threadpoolctl \
|
|
||||||
py3-numpy \
|
|
||||||
py3-numpy-dev \
|
|
||||||
py3-scipy && \
|
|
||||||
\
|
|
||||||
# Install build dependencies
|
|
||||||
apk add --repository http://dl-cdn.alpinelinux.org/alpine/edge/main \
|
|
||||||
--no-cache --virtual .build-deps \
|
|
||||||
blas-dev \
|
|
||||||
build-base \
|
|
||||||
bzip2-dev \
|
|
||||||
freetype-dev \
|
|
||||||
g++ \
|
|
||||||
gcc \
|
gcc \
|
||||||
gfortran \
|
|
||||||
git \
|
git \
|
||||||
lapack-dev \
|
gnuplot \
|
||||||
libgfortran \
|
libbz2-dev \
|
||||||
libpng-dev \
|
libcurl4-gnutls-dev \
|
||||||
|
liblzma-dev \
|
||||||
|
libncurses5-dev \
|
||||||
|
libssl-dev \
|
||||||
make \
|
make \
|
||||||
musl-dev \
|
perl \
|
||||||
ncurses-dev \
|
python3 \
|
||||||
py-pip \
|
python3-pip \
|
||||||
python3-dev \
|
python3-dev \
|
||||||
wget \
|
zlib1g-dev \
|
||||||
xz-dev \
|
&& \
|
||||||
zlib-dev &&\
|
apt-get autoclean && rm -rf /var/lib/apt/lists/*
|
||||||
\
|
|
||||||
|
RUN \
|
||||||
# Make python3 the default
|
# Make python3 the default
|
||||||
ln -fs /usr/include/locale.h /usr/include/xlocale.h && \
|
update-alternatives --install /usr/bin/python python /usr/bin/python3 1 && \
|
||||||
ln -fs /usr/bin/python3 /usr/local/bin/python && \
|
update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
|
||||||
ln -fs /usr/bin/pip3 /usr/local/bin/pip && \
|
|
||||||
\
|
RUN \
|
||||||
# Download and install Minimap2
|
# Download and install Minimap2
|
||||||
cd /tmp && \
|
cd /tmp && \
|
||||||
wget -qO- https://github.com/lh3/minimap2/releases/download/v${MINIMAP2_VERSION}/minimap2-${MINIMAP2_VERSION}.tar.bz2 | tar xjv && \
|
curl -L https://github.com/lh3/minimap2/releases/download/v${MINIMAP2_VERSION}/minimap2-${MINIMAP2_VERSION}.tar.bz2 | tar xjv && \
|
||||||
cd minimap2-${MINIMAP2_VERSION} && \
|
cd minimap2-${MINIMAP2_VERSION} && \
|
||||||
make && \
|
make && \
|
||||||
cp minimap2 /usr/bin && \
|
cp minimap2 /usr/bin && \
|
||||||
|
@ -80,8 +62,9 @@ RUN \
|
||||||
cp minimap2.1 /usr/man && \
|
cp minimap2.1 /usr/man && \
|
||||||
cd .. && \
|
cd .. && \
|
||||||
rm -rf minimap2-${MINIMAP2_VERSION} && \
|
rm -rf minimap2-${MINIMAP2_VERSION} && \
|
||||||
cd && \
|
cd
|
||||||
\
|
|
||||||
|
RUN \
|
||||||
# Download and install LAST
|
# Download and install LAST
|
||||||
cd /tmp && \
|
cd /tmp && \
|
||||||
git clone https://gitlab.com/mcfrith/last.git && \
|
git clone https://gitlab.com/mcfrith/last.git && \
|
||||||
|
@ -90,43 +73,47 @@ RUN \
|
||||||
make && make install && \
|
make && make install && \
|
||||||
cd .. && \
|
cd .. && \
|
||||||
rm -rf last && \
|
rm -rf last && \
|
||||||
cd && \
|
cd
|
||||||
\
|
|
||||||
|
RUN \
|
||||||
# Download and install samtools
|
# Download and install samtools
|
||||||
cd /tmp && \
|
cd /tmp && \
|
||||||
wget https://github.com/samtools/samtools/releases/download/$SAMTOOLS_VERSION/samtools-$SAMTOOLS_VERSION.tar.bz2 && \
|
curl -L https://github.com/samtools/samtools/releases/download/$SAMTOOLS_VERSION/samtools-$SAMTOOLS_VERSION.tar.bz2 | tar xvj && \
|
||||||
tar xjvf samtools-$SAMTOOLS_VERSION.tar.bz2 && \
|
|
||||||
cd samtools-$SAMTOOLS_VERSION && \
|
cd samtools-$SAMTOOLS_VERSION && \
|
||||||
./configure && \
|
./configure && \
|
||||||
make && make install && \
|
make && make install && \
|
||||||
cd .. && \
|
cd .. && \
|
||||||
rm -rf samtools-$SAMTOOLS_VERSION* && \
|
rm -rf samtools-$SAMTOOLS_VERSION && \
|
||||||
cd && \
|
cd
|
||||||
\
|
|
||||||
|
RUN \
|
||||||
# Download and install GenomeTools
|
# Download and install GenomeTools
|
||||||
cd /tmp && \
|
cd /tmp && \
|
||||||
wget -qO- https://github.com/genometools/genometools/archive/refs/tags/v${GENOMETOOLS_VERSION}.tar.gz | tar xzv && \
|
curl -L https://github.com/genometools/genometools/archive/refs/tags/v${GENOMETOOLS_VERSION}.tar.gz | tar xzv && \
|
||||||
cd genometools-${GENOMETOOLS_VERSION} && \
|
cd genometools-${GENOMETOOLS_VERSION} && \
|
||||||
make cairo=no errorcheck=no && make cairo=no errorcheck=no install && \
|
make cairo=no errorcheck=no && make cairo=no errorcheck=no install && \
|
||||||
cd .. && \
|
cd .. && \
|
||||||
rm -rf v${GENOMETOOLS_VERSION} && \
|
rm -rf v${GENOMETOOLS_VERSION} && \
|
||||||
cd && \
|
cd
|
||||||
\
|
|
||||||
# Download and install Python packages from pip
|
# Download and install Python packages from pip
|
||||||
pip3 install -v --no-cache-dir scikit-learn==0.21.3 && \
|
RUN pip3 install -v --no-cache-dir six==1.16.0
|
||||||
pip3 install -v --no-cache-dir pysam==0.17 && \
|
RUN pip3 install -v --no-cache-dir joblib==0.14.1
|
||||||
pip3 install -v --no-cache-dir HTSeq==0.11.2 && \
|
RUN pip3 install -v --no-cache-dir numpy==1.17.2
|
||||||
pip3 install -v --no-cache-dir pybedtools==0.8.2 && \
|
RUN pip3 install -v --no-cache-dir scipy==1.4.1
|
||||||
\
|
RUN pip3 install -v --no-cache-dir scikit-learn==0.21.3
|
||||||
|
RUN pip3 install -v --no-cache-dir pysam==0.17
|
||||||
|
RUN pip3 install -v --no-cache-dir HTSeq==0.11.2
|
||||||
|
RUN pip3 install -v --no-cache-dir pybedtools==0.8.2
|
||||||
|
|
||||||
|
RUN \
|
||||||
# Download and install NanoSim
|
# Download and install NanoSim
|
||||||
cd /tmp && \
|
cd /tmp && \
|
||||||
wget -qO- https://github.com/bcgsc/NanoSim/archive/refs/tags/v${NANOSIM_VERSION}.tar.gz | tar xzv && \
|
curl -L https://github.com/bcgsc/NanoSim/archive/refs/tags/v${NANOSIM_VERSION}.tar.gz | tar xzv && \
|
||||||
cd NanoSim-${NANOSIM_VERSION} && \
|
cd NanoSim-${NANOSIM_VERSION} && \
|
||||||
cp -r src/* /usr/bin && \
|
cp -r src/* /usr/bin && \
|
||||||
cd .. && \
|
cd .. && \
|
||||||
rm -rf NanoSim-${NANOSIM_VERSION} && \
|
rm -rf NanoSim-${NANOSIM_VERSION} && \
|
||||||
cd .. && \
|
cd ..
|
||||||
\
|
|
||||||
# Cleanup build packages
|
ENTRYPOINT [ "/usr/bin/simulator.py" ]
|
||||||
apk del --no-cache .build-deps && \
|
|
||||||
rm -vrf /var/cache/apk/*
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
[![NanoSim source](https://img.shields.io/static/v1?label=NanoSim%20Source&message=GitHub&color=lightgrey&logo=github&style=flat-square)](https://github.com/bcgsc/NanoSim)
|
[![NanoSim source](https://img.shields.io/static/v1?label=NanoSim%20Source&message=GitHub&color=lightgrey&logo=github&style=flat-square)](https://github.com/bcgsc/NanoSim)
|
||||||
[![Version 3.0.2](https://img.shields.io/static/v1?label=Latest%20version&message=3.0.2&color=yellowgreen&logo=linuxcontainers&style=flat-square)](https://cloud.sylabs.io/library/millironx/default/nanosim)
|
[![Version 3.0.2](https://img.shields.io/static/v1?label=Latest%20version&message=3.0.2&color=yellowgreen&logo=linuxcontainers&style=flat-square)](https://cloud.sylabs.io/library/millironx/default/nanosim)
|
||||||
[![Docs](https://img.shields.io/static/v1?label=Docs&message=README&color=blue&style=flat-square)](https://github.com/bcgsc/NanoSim/blob/master/README.md)
|
[![Docs](https://img.shields.io/static/v1?label=Docs&message=README&color=blue&style=flat-square)](https://github.com/bcgsc/NanoSim/blob/master/README.md)
|
||||||
[![Alpine base](https://img.shields.io/static/v1?label=Base%20image&message=Alpine&color=0d597f&logo=alpinelinux&style=flat-square)](https://www.alpinelinux.org/)
|
[![Ubuntu base](https://img.shields.io/static/v1?label=Base%20image&message=Ubuntu&color=e95420&logo=ubuntu&style=flat-square)](https://ubuntu.com/)
|
||||||
|
|
||||||
NanoSim is a fast and scalable read simulator that captures the
|
NanoSim is a fast and scalable read simulator that captures the
|
||||||
technology-specific features of ONT data, and allows for adjustments upon
|
technology-specific features of ONT data, and allows for adjustments upon
|
||||||
|
|
Loading…
Reference in a new issue