/
Dockerfile
77 lines (56 loc) · 2.31 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
# Copyright (c) Bo Peng and the University of Texas MD Anderson Cancer Center
# Distributed under the terms of the 3-clause BSD License.
# SoS official docker image for latest version of SoS. Use command
#
# docker build -t vatlab/sos-notebook:latest docker-notebook
#
# to build it.
#
# tag created in Fev 2019
FROM jupyter/datascience-notebook:python-3.10
LABEL maintainer="Bo Peng <Bo.Peng@bcm.edu>"
USER root
# Tools
RUN apt-get update
RUN apt-get install -y graphviz zlib1g-dev libbz2-dev libcurl4-openssl-dev libssl-dev
RUN apt-get install -y texlive-xetex texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
RUN apt-get install -y octave
RUN octave --eval 'pkg install -forge dataframe'
RUN apt-get install -y npm vim libgmp3-dev software-properties-common
RUN apt-get install -y libtool libffi-dev ruby ruby-dev make libzmq3-dev libczmq-dev
# Install some packages for our examples
RUN conda update conda -y
RUN conda install -c conda-forge -y r-arrow r-glmnet r-biocmanager
# ruby
RUN gem install ffi-rzmq
RUN gem install iruby --pre
RUN gem install daru nmatrix
RUN iruby register --force
RUN cd /home/jovyan; chown -R jovyan ../jovyan
USER jovyan
RUN pip install sklearn
# Bash
RUN pip install bash_kernel
RUN python -m bash_kernel.install --user
# Octave
RUN pip install octave_kernel
RUN python -m octave_kernel install --user
# JavaScript
RUN npm rebuild
RUN npm install -g ijavascript
RUN ijsinstall --spec-path=full
# Julia
RUN julia -e "using Pkg;Pkg.add([\"Feather\", \"DataFrames\", \"NamedArrays\"])"
RUN conda install -y pyarrow -c conda-forge
# SOS
RUN pip install docker markdown wand graphviz imageio pillow nbformat
## trigger rerun for sos updates
ARG DUMMY=unknown
RUN DUMMY=${DUMMY} pip install sos sos-notebook sos-r sos-julia sos-python sos-matlab sos-bash sos-ruby sos-javascript sos-bioinfo markdown-kernel
RUN pip install jupyter-contrib-core transient-display-data jupyterlab-sos
RUN jupyter lab build --dev-build=False --minimize=False
# Markdown kernel
RUN python -m markdown_kernel.install --prefix /opt/conda/
RUN python -m sos_notebook.install --prefix /opt/conda/
ENV JUPYTER_ENABLE_LAB TRUE
USER jovyan