FROM jupyter/minimal-notebook MAINTAINER Jupyter Project USER root # R pre-requisites RUN apt-get update && \ apt-get install -y --no-install-recommends \ libxrender1 \ fonts-dejavu \ gfortran \ gcc && apt-get clean # Julia dependencies RUN apt-get update && \ apt-get install -y --no-install-recommends \ julia \ libnettle4 && apt-get clean USER jovyan # Install Python 3 packages RUN conda install --yes \ 'ipywidgets=4.0*' \ 'pandas=0.16*' \ 'matplotlib=1.4*' \ 'scipy=0.15*' \ 'seaborn=0.6*' \ 'scikit-learn=0.16*' \ 'scikit-image=0.11*' \ 'sympy=0.7*' \ 'cython=0.22*' \ 'patsy=0.3*' \ 'statsmodels=0.6*' \ 'cloudpickle=0.1*' \ 'dill=0.2*' \ 'numba=0.20*' \ 'bokeh=0.9*' \ && conda clean -yt # Install Python 2 packages RUN conda create -p $CONDA_DIR/envs/python2 python=2.7 \ 'ipython=4.0*' \ 'ipywidgets=4.0*' \ 'pandas=0.16*' \ 'matplotlib=1.4*' \ 'scipy=0.15*' \ 'seaborn=0.6*' \ 'scikit-learn=0.16*' \ 'scikit-image=0.11*' \ 'sympy=0.7*' \ 'cython=0.22*' \ 'patsy=0.3*' \ 'statsmodels=0.6*' \ 'cloudpickle=0.1*' \ 'dill=0.2*' \ 'numba=0.20*' \ 'bokeh=0.9*' \ pyzmq \ && conda clean -yt # R packages including IRKernel which gets installed globally. RUN conda config --add channels r RUN conda install --yes \ 'r-base=3.2*' \ 'r-irkernel=0.4*' \ 'r-plyr=1.8*' \ 'r-devtools=1.8*' \ 'r-dplyr=0.4*' \ 'r-ggplot2=1.0*' \ 'r-tidyr=0.2*' \ 'r-shiny=0.12*' \ 'r-rmarkdown=0.7*' \ 'r-forecast=5.8*' \ 'r-stringr=0.6*' \ 'r-rsqlite=1.0*' \ 'r-reshape2=1.4*' \ 'r-nycflights13=0.1*' \ 'r-caret=6.0*' \ 'r-rcurl=1.95*' \ 'r-randomforest=4.6*' && conda clean -yt # WORKAROUND: symlink version of zmq required by latest rzmq back into conda lib # https://github.com/jupyter/docker-stacks/issues/55 RUN ln -s /opt/conda/pkgs/zeromq-4.0.*/lib/libzmq.so.4.* /opt/conda/lib/libzmq.so.4 RUN ln -s /opt/conda/pkgs/libsodium-0.4.*/lib/libsodium.so.4.* /opt/conda/lib/libsodium.so.4 # Install IJulia packages as jovyan and then move the kernelspec out # to the system share location. Avoids problems with runtime UID change not # taking effect properly on the .local folder in the jovyan home dir. RUN julia -e 'Pkg.add("IJulia")' && \ mv /home/$NB_USER/.local/share/jupyter/kernels/* $CONDA_DIR/share/jupyter/kernels/ && \ chmod -R go+rx $CONDA_DIR/share/jupyter && \ rm -rf /home/$NB_USER/.local/share RUN julia -e 'Pkg.add("Gadfly")' && julia -e 'Pkg.add("RDatasets")' USER root # Install Python 2 kernel spec globally to avoid permission problems when NB_UID # switching at runtime. RUN $CONDA_DIR/envs/python2/bin/python \ $CONDA_DIR/envs/python2/bin/ipython \ kernelspec install-self