-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
134 lines (124 loc) · 3.01 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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
FROM jupyter/datascience-notebook
# -- from the docs:
# tensorflow-notebook inherits from scipy-notebook, which provides:
#
# beautifulsoup
# bokeh
# cloudpickle
# cython
# dill
# jupyter
# matplotlib
# numba
# numpy
# pandas
# patsy
# scikit-image
# scikit-learn
# scipy
# seaborn
# statsmodels
# sympy
# vincent
#
# (https://github.com/jupyter/docker-stacks/tree/master/scipy-notebook)
#
#
# then the tensorflow notebook adds
#
# keras
# tensorflow
#
# (https://github.com/jupyter/docker-stacks/tree/master/tensorflow-notebook)
LABEL maintainer="Mike Macpherson <[email protected]>"
USER root
RUN apt-get update && apt-get install -y \
awscli \
default-jre \
ed \
git-core \
libhdf5-dev \
libnlopt-dev \
libomp-dev \
&& rm -rf /var/lib/apt/lists/*
ARG JDK_CERTS_URL=https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/openjdk-9-slim-cacerts
ARG LEIN_URL=https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein
RUN curl -s -o /etc/ssl/certs/java/cacerts $JDK_CERTS_URL \
&& curl -s -o /usr/local/bin/lein $LEIN_URL \
&& chmod +x /usr/local/bin/lein \
&& lein version # called for side effect of installation on first run
USER $NB_USER
# -- upgrade everything
# (relies on earlier-configured conda channels: first conda-forge, then defaults)
RUN conda update --all --quiet --yes
# -- add packages available in conda
# (relies on earlier-configured conda channels: first conda-forge, then defaults)
RUN conda install --quiet --yes \
# -- general
boto3 \
dask \
ipython \
luigi \
click \
# -- web/net
bottle \
flask \
# pelican \
requests \
# -- viz
# altair \
plotnine \
# -- data
# feather-format \
protobuf \
pymc3 \
# pystan \
# pytorch \
# theano \
xgboost \
# -- coding
flake8 \
hypothesis \
jupyter_contrib_nbextensions \
jupyterlab \
mypy \
nbstripout \
pytest \
watermark \
yapf \
# -- R
r-arm \
r-caret \
r-domc \
r-effects \
r-feather \
r-glmnet \
r-irkernel \
r-proc \
r-rocr \
r-speedglm \
r-tidyverse \
&& conda clean -tipsy
# -- install python packages not available in the conda channels above
RUN pip install -U -q pip && \
pip install -U -q \
dash \
dash-core-components \
dash-html-components \
dash-renderer \
edward \
feather-format \
knotr \
plotly \
plydata \
pysistence \
git+git://github.com/mmacpherson/cottonmouth.git@master
# -- install R packages not available in the conda channels above
# -- disabled "interplot" for now; dep "arm" unavailable
RUN R -e "install.packages(c('glmnetUtils', 'biglasso', 'interplot'), repos = 'http://cran.rstudio.com')"
# -- install clojure jupyter kernel
RUN conda install --quiet --yes \
-c simplect \
clojupyter \
&& conda clean -tipsy
WORKDIR $HOME