forked from NCBI-Hackathons/SpoonFedNanopore
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
103 lines (72 loc) · 2.45 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
FROM ubuntu:16.04
RUN apt-get update
RUN apt-get install locales
# Set the locale
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
# Install dependencies
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update
# General things
RUN apt-get install -qq wget unzip build-essential cmake gcc libcunit1-dev libudev-dev
RUN apt-get install -qq libcurl4-gnutls-dev
# Python things
RUN apt-get install -y python3 python3-dev python3-pip r-base
# Canu things
RUN apt-get install -y default-jre gnuplot
RUN pip3 install jupyter
# Grab the checked out source
RUN mkdir -p /work
WORKDIR /work
# Install canu
RUN wget https://github.com/marbl/canu/releases/download/v1.7/canu-1.7.Linux-amd64.tar.xz
RUN tar -xvf canu-1.7.Linux-amd64.tar.xz
# Install blast plus
RUN wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.7.1+-x64-linux.tar.gz
RUN tar -zxvf ncbi-blast-2.7.1+-x64-linux.tar.gz
# it needs perl-doc
RUN apt-get install -qq perl-doc
# Download some blast databases
# RUN ncbi-blast-2.7.1+/bin/update_blastdb.pl nr nt
# Install more pythons
RUN apt-get install -qq python-pip
# Install poretools
RUN pip install poretools
# Make viz
RUN pip install matplotlib scikit-learn
# Do BAM things
RUN pip install pysam
# Get MetaGeneMark
RUN wget http://topaz.gatech.edu/GeneMark/tmp/GMtool_H80a6/MetaGeneMark_linux_64.tar.gz
RUN tar -zvxf MetaGeneMark_linux_64.tar.gz
RUN cp MetaGeneMark_linux_64/mgm/gmhmmp /usr/bin/.
WORKDIR /root
RUN wget http://topaz.gatech.edu/GeneMark/tmp/GMtool_H80a6/gm_key_64.gz
RUN gunzip gm_key_64.gz
RUN mv gm_key_64 .gm_key
WORKDIR /work
# Get mash
RUN wget https://github.com/marbl/Mash/releases/download/v2.0/mash-Linux64-v2.0.tar
RUN tar -xvf mash-Linux64-v2.0.tar
RUN cp mash-Linux64-v2.0/mash /usr/bin/.
# Get git
RUN apt-get install -qq git
# Get miniasm
RUN git clone https://github.com/lh3/miniasm.git
WORKDIR /work/miniasm
RUN make
RUN cp miniasm /usr/bin/.
RUN cp minidot /usr/bin/.
# Get minimap2
RUN wget https://github.com/lh3/minimap2/releases/download/v2.10/minimap2-2.10_x64-linux.tar.bz2
RUN bunzip2 minimap2-2.10_x64-linux.tar.bz2
RUN tar -xvf minimap2-2.10_x64-linux.tar
RUN cp minimap2-2.10_x64-linux/minimap2 /usr/bin/.
# Get BioPython
RUN pip3 install biopython
WORKDIR /work
RUN git clone https://github.com/NCBI-Hackathons/SpoonFedNanopore.git
RUN cp -R SpoonFedNanopore/* .
CMD ["/usr/local/bin/jupyter", "notebook", "--port", "8888", "--ip", "0.0.0.0", "--allow-root"]