Upgrade to Jupyter Notebook

* Change minimal-notebook to install notebook=4.0*
* Change other Dockerfile to point to 4.0 Docker Hub tag (to be built)
* Change config and pem file paths for jupyter
* Install ipywidgets in all containers that have a Python stack
* Update all READMEs to describe v3.2 and v4.0 since Docker Hub only shows one README for all tags

Contribution (c) Copyright IBM Corp. 2015
This commit is contained in:
Peter Parente
2015-08-22 22:23:24 -04:00
parent 4dbc42b5a9
commit e1c0c75c9c
11 changed files with 39 additions and 29 deletions

View File

@@ -1,6 +1,5 @@
# Copyright (c) IPython Development Team.
# (c) Copyright IBM Corp. 2015
FROM jupyter/minimal-notebook
# Copyright (c) Jupyter Development Team.
FROM jupyter/minimal-notebook:4.0
MAINTAINER Jupyter Project <jupyter@googlegroups.com>
@@ -32,6 +31,7 @@ ENV MESOS_NATIVE_LIBRARY /usr/local/lib/libmesos.so
# Install Python 3 packages
RUN conda install --yes \
'ipywidgets=4.0*' \
'pandas=0.16*' \
'matplotlib=1.4*' \
'scipy=0.15*' \
@@ -41,7 +41,8 @@ RUN conda install --yes \
# Install Python 2 packages and kernel spec
RUN conda create -p $CONDA_DIR/envs/python2 python=2.7 \
'ipython=3.2*' \
'ipython=4.0*' \
'ipywidgets=4.0*' \
'pandas=0.16*' \
'matplotlib=1.4*' \
'scipy=0.15*' \

View File

@@ -2,7 +2,7 @@
## What it Gives You
* Jupyter Notebook server v3.2.x
* Jupyter Notebook server (v4.0.x or v3.2.x, see tag)
* Conda Python 3.4.x and Python 2.7.x environments
* pyspark, pandas, matplotlib, scipy, seaborn, scikit-learn pre-installed
* Spark 1.4.1 for use in local mode or to connect to a cluster of Spark workers
@@ -95,6 +95,7 @@ You may customize the execution of the Docker container and the Notebook server
* `-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.
* **(v3.2.x)** `-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.
* **(v4.0.x)** `-v /some/host/folder/for/server.pem:/home/jovyan/.local/share/jupyter/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.
* `-e INTERFACE=10.10.10.10` - Configures Jupyter Notebook to listen on the given interface. Defaults to '*', all interfaces, which is appropriate when running using default bridged Docker networking. When using Docker's `--net=host`, you may wish to use this option to specify a particular network interface.
* `-e PORT=8888` - Configures Jupyter Notebook to listen on the given port. Defaults to 8888, which is the port exposed within the Dockerfile for the image. When using Docker's `--net=host`, you may wish to use this option to specify a particular port.