-
Notifications
You must be signed in to change notification settings - Fork 11
/
Dockerfile.base
76 lines (67 loc) · 2.41 KB
/
Dockerfile.base
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
FROM python:3.6-stretch
LABEL maintainer="Dimitri Larue <[email protected]>"
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
less \
locales \
wget \
ca-certificates \
fonts-texgyre \
jellyfish \
pigz \
cmake \
perl \
&& rm -rf /var/lib/apt/lists/*
# R
ENV R_BASE_VERSION 3.3.3
## Now install R and littler, and create a link for littler in /usr/local/bin
## Also set a default CRAN repo, and make sure littler knows about it too
## Also install stringr to make dococt install (from source) easier
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
littler \
r-cran-littler \
r-cran-stringr \
r-base=${R_BASE_VERSION}-* \
r-base-dev=${R_BASE_VERSION}-* \
r-recommended=${R_BASE_VERSION}-* \
&& echo 'options(repos = c(CRAN = "https://cloud.r-project.org/"))' >> /etc/R/Rprofile.site \
&& echo 'source("/etc/R/Rprofile.site")' >> /etc/littler.r \
&& ln -s /usr/lib/R/site-library/littler/examples/install.r /usr/local/bin/install.r \
&& ln -s /usr/lib/R/site-library/littler/examples/install2.r /usr/local/bin/install2.r \
&& ln -s /usr/lib/R/site-library/littler/examples/installGithub.r /usr/local/bin/installGithub.r \
&& ln -s /usr/lib/R/site-library/littler/examples/testInstalled.r /usr/local/bin/testInstalled.r \
&& install.r docopt \
&& rm -rf /tmp/downloaded_packages/ /tmp/*.rds \
&& rm -rf /var/lib/apt/lists/*
COPY install_r_packages.R .
RUN Rscript install_r_packages.R
# Python
RUN pip install snakemake
COPY share share
RUN cd share/computeNF \
&& rm -f /usr/local/bin/computeNF \
&& make \
&& cp computeNF /usr/local/bin/ \
&& cd ../../share/joinCounts \
&& rm -f /usr/local/bin/joinCounts \
&& make \
&& cp joinCounts /usr/local/bin/ \
&& cd ../../share/mergeTags \
&& rm -f /usr/local/bin/mergeTags \
&& make \
&& cp mergeTags /usr/local/bin/ \
&& apt-get update \
&& apt-get install -y --no-install-recommends \
libboost-all-dev \
&& cd ../../share/TtestFilter \
&& rm -f /usr/local/bin/TtestFilter \
&& make \
&& cp TtestFilter /usr/local/bin/ \
&& rm -rf /var/lib/apt/lists/* \
&& cd ../../share \
&& rm -f /usr/local/bin/kallisto \
&& wget https://github.com/pachterlab/kallisto/releases/download/v0.43.0/kallisto_linux-v0.43.0.tar.gz -O kallisto.tar.gz \
&& tar -xzf kallisto.tar.gz \
&& cp kallisto_linux-v0.43.0/kallisto /usr/local/bin
RUN rm -rf share