Skip to content

Instantly share code, notes, and snippets.

@kapsakcj
Created April 8, 2019 18:12
Show Gist options
  • Save kapsakcj/8b661d3a27ff9eafe42728773c9346f2 to your computer and use it in GitHub Desktop.
Save kapsakcj/8b661d3a27ff9eafe42728773c9346f2 to your computer and use it in GitHub Desktop.
Dockerfile for installing lyveset-2.0.1 in a container with ubuntu-bioinic as base image
#Use ubuntu as base image
FROM ubuntu:bionic
# metadata
LABEL base.image="ubuntu:bionic"
LABEL version="1"
LABEL software="Lyve-SET"
LABEL software.version="2.0.1"
LABEL description="LYVE-SET, a method of using hqSNPs to create a phylogeny, especially for outbreak investigations"
LABEL website="https://github.com/lskatz/lyve-SET"
LABEL license="https://github.com/lskatz/lyve-SET/blob/master/LICENSE"
MAINTAINER Nicholas Florek <[email protected]>
#install dependencies
RUN apt-get update && apt-get install -y\
perl\
libfile-slurp-perl\
openjdk-11-jre\
bioperl\
wget\
libz-dev\
git\
libncurses5-dev\
libncursesw5-dev\
build-essential\
ncbi-blast+\
libsvn-perl\
subversion\
libsvn1\
automake1.11\
libpthread-stubs0-dev\
gcc-5\
g++-5
# downgrade to gcc-5 and g++-5
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 60 --slave /usr/bin/g++ g++ /usr/bin/g++-5
#install edirect
RUN wget ftp.ncbi.nlm.nih.gov/entrez/entrezdirect/edirect.tar.gz
RUN tar -xzvf edirect.tar.gz; rm edirect.tar.gz; cd edirect; ./setup.sh
#install smalt (at the time of this build lyve-SET was not building correctly)
RUN wget --max-redirect 50 --continue 'https://downloads.sourceforge.net/project/smalt/smalt-0.7.6-static.tar.gz' -O smalt-0.7.6-static.tar.gz
RUN tar -zxvf smalt-0.7.6-static.tar.gz; rm smalt-0.7.6-static.tar.gz;cd smalt-0.7.6; ./configure; make; make install
#get lyveset files
RUN wget https://github.com/lskatz/lyve-SET/archive/v2.0.1.tar.gz
RUN tar -xzvf v2.0.1.tar.gz;rm v2.0.1.tar.gz;mv lyve-SET-2.0.1 lyve-SET
#setup the lyveset filesystem
RUN cpan Test::Most\
Bio::FeatureIO\
String::Escape
RUN make -C /lyve-SET install -e PREFIX=/lyve-SET
RUN make -C /lyve-SET env -e PREFIX=/lyve-SET && \
mkdir /data
ENV PATH="/lyve-SET:\
/lyve-SET/scripts:\
/edirect:\
${PATH}"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment