Initial contribution of R, scipy, minimal notebook stacks

This commit is contained in:
Peter Parente
2015-07-19 23:20:27 -04:00
parent e3ef913ff8
commit 8ab2e0ed8f
11 changed files with 316 additions and 1 deletions

36
r-notebook/Dockerfile Normal file
View File

@@ -0,0 +1,36 @@
FROM jupyter/minimal-notebook
MAINTAINER Jupyter Project <jupyter@googlegroups.com>
# R pre-requisites
RUN apt-get install -y --no-install-recommends \
libxrender1 \
fonts-dejavu \
gfortran \
gcc && apt-get clean
USER jovyan
# R packages
RUN conda config --add channels r
RUN conda install --yes \
'r-base=3.1*' \
'r-irkernel=0.4*' \
'r-plyr=1.8*' \
'r-devtools=1.7*' \
'r-dplyr=0.4*' \
'r-ggplot2=1.0*' \
'r-tidyr=0.2*' \
'r-shiny=0.11*' \
'r-rmarkdown=0.5*' \
'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
# Switch back to root so that supervisord runs under that user
USER root

26
r-notebook/README.md Normal file
View File

@@ -0,0 +1,26 @@
# Jupyter Notebook R Stack
## What it Gives You
* Jupyter Notebook server v3.2.x
* Conda R v3.1.x and channel
* plyr, devtools, dplyr, ggplot2, tidyr, shiny, rmarkdown, forecast, stringr, rsqlite, reshape2, nycflights13, caret, rcurl, and randomforest pre-installed
* Options for HTTPS, password auth, and passwordless `sudo`
## Basic Use
The following command starts a container with the Notebook server listening for HTTP connections on port 8888 without authentication configured.
```
docker run -d -p 8888:8888 jupyter/r-notebook
```
## Options
You may customize the execution of the Docker container and the Notebook server it contains with the following optional arguments.
* `-e PASSWORD="YOURPASS"` - Configures Jupyter Notebook to require the given password. Should be conbined with `USE_HTTPS` on untrusted networks.
* `-e USE_HTTPS=yes` - Configures Jupyter Notebook to accept encrypted HTTPS connections. If a `pem` file containing a SSL certificate and key is not found in `/home/jovyan/.ipython/profile_default/security/notebook.pem`, the container will generate a self-signed certificate for you.
* `-e GRANT_SUDO=yes` - Gives the `jovyan` user passwordless `sudo` capability. Useful for installing OS packages. **You should only enable `sudo` if you trust the user or if the container is running on an isolated host.**
* `-v /some/host/folder/for/work:/home/jovyan/work` - Host mounts the default working directory on the host to preserve work even when the container is destroyed and recreated (e.g., during an upgrade).
* `-v /some/host/folder/for/server.pem:/home/jovyan/.ipython/profile_default/security/notebook.pem` - Mounts a SSL certificate plus key for `USE_HTTPS`. Useful if you have a real certificate for the domain under which you are running the Notebook server.