From a1540ecc7e49c4c20d065685fcfe87ba167ab4b7 Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Mon, 11 Dec 2017 10:04:30 +0000 Subject: [PATCH 01/10] added initial commit of MXNet Notebook command --- mxnet-notebook/Dockerfile | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 mxnet-notebook/Dockerfile diff --git a/mxnet-notebook/Dockerfile b/mxnet-notebook/Dockerfile new file mode 100644 index 0000000..345ba29 --- /dev/null +++ b/mxnet-notebook/Dockerfile @@ -0,0 +1,6 @@ +FROM mxnet/python +RUN pip install jupyter matplotlib gluon +LABEL io.whalebrew.name mxnet-notebook +LABEL io.whalebrew.config.ports '["8888:8888"]' +LABEL io.whalebrew.config.volumes '["~/:/root/dev:rw"]' +ENTRYPOINT ["jupyter", "notebook", "--allow-root", "--ip='0.0.0.0'"] From ac6ccfbd8bf08ca8fd077b674a93d52119d7e620 Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Mon, 11 Dec 2017 22:33:09 +0000 Subject: [PATCH 02/10] fixed user launch issues by granting all permissions to the .local directory --- mxnet-notebook/Dockerfile | 9 +++++++-- mxnet-notebook/README.md | 5 +++++ 2 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 mxnet-notebook/README.md diff --git a/mxnet-notebook/Dockerfile b/mxnet-notebook/Dockerfile index 345ba29..df19d49 100644 --- a/mxnet-notebook/Dockerfile +++ b/mxnet-notebook/Dockerfile @@ -1,6 +1,11 @@ FROM mxnet/python -RUN pip install jupyter matplotlib gluon + LABEL io.whalebrew.name mxnet-notebook LABEL io.whalebrew.config.ports '["8888:8888"]' -LABEL io.whalebrew.config.volumes '["~/:/root/dev:rw"]' +LABEL io.whalebrew.config.volumes '["$HOME:/notebook/data:rw"]' +LABEL io.whalebrew.config.working_dir '/notebook' + +RUN pip install jupyter matplotlib gluon +# Jupyter needs to create a sub directory in '.local', give the daemon permissions +RUN mkdir /.local && chmod 777 /.local ENTRYPOINT ["jupyter", "notebook", "--allow-root", "--ip='0.0.0.0'"] diff --git a/mxnet-notebook/README.md b/mxnet-notebook/README.md new file mode 100644 index 0000000..2d8e3a8 --- /dev/null +++ b/mxnet-notebook/README.md @@ -0,0 +1,5 @@ +# Python Notebook with MXNet + +**built by jpbarto @ GitHub** + +``mxnet-notebook`` is a Jupyter-powered Python 3 notebook with [Apache MXNet](https://mxnet.incubator.apache.org/) and [Gluon](https://mxnet.incubator.apache.org/tutorials/gluon/gluon.html) installed. From a9ec3dde01e3ccb8142d5954ac9f9e14a3039f37 Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Tue, 12 Dec 2017 14:23:56 +0000 Subject: [PATCH 03/10] fixed volume mapping that left data directory artifacts in the working directory --- mxnet-notebook/Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mxnet-notebook/Dockerfile b/mxnet-notebook/Dockerfile index df19d49..f33b48c 100644 --- a/mxnet-notebook/Dockerfile +++ b/mxnet-notebook/Dockerfile @@ -2,8 +2,7 @@ FROM mxnet/python LABEL io.whalebrew.name mxnet-notebook LABEL io.whalebrew.config.ports '["8888:8888"]' -LABEL io.whalebrew.config.volumes '["$HOME:/notebook/data:rw"]' -LABEL io.whalebrew.config.working_dir '/notebook' +LABEL io.whalebrew.config.working_dir '/' RUN pip install jupyter matplotlib gluon # Jupyter needs to create a sub directory in '.local', give the daemon permissions From a573c88d464c5a10e879c997866b47b10f147f76 Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Sun, 28 Jan 2018 04:27:59 +0000 Subject: [PATCH 04/10] modified notebook to include Tensorflow and Python3 --- mxnet-notebook/Dockerfile | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/mxnet-notebook/Dockerfile b/mxnet-notebook/Dockerfile index f33b48c..29e58b0 100644 --- a/mxnet-notebook/Dockerfile +++ b/mxnet-notebook/Dockerfile @@ -1,10 +1,18 @@ -FROM mxnet/python +# FROM mxnet/python +FROM ubuntu -LABEL io.whalebrew.name mxnet-notebook +LABEL io.whalebrew.name ml-notebook LABEL io.whalebrew.config.ports '["8888:8888"]' -LABEL io.whalebrew.config.working_dir '/' -RUN pip install jupyter matplotlib gluon +RUN apt-get update -y +RUN apt-get install -y python-pip python3-pip python-numpy python3-numpy + +RUN pip install --upgrade pip +RUN pip install jupyter matplotlib gluon tensorflow + +RUN pip3 install --upgrade pip +RUN pip3 install jupyter matplotlib gluon tensorflow + # Jupyter needs to create a sub directory in '.local', give the daemon permissions RUN mkdir /.local && chmod 777 /.local ENTRYPOINT ["jupyter", "notebook", "--allow-root", "--ip='0.0.0.0'"] From aa33e48df49b3e484a9f9f4d47b54f299e63f53e Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Sun, 28 Jan 2018 04:28:31 +0000 Subject: [PATCH 05/10] renamed notebook to reflect support for both mxnet and tensorflow --- {mxnet-notebook => ml-notebook}/Dockerfile | 0 {mxnet-notebook => ml-notebook}/README.md | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename {mxnet-notebook => ml-notebook}/Dockerfile (100%) rename {mxnet-notebook => ml-notebook}/README.md (100%) diff --git a/mxnet-notebook/Dockerfile b/ml-notebook/Dockerfile similarity index 100% rename from mxnet-notebook/Dockerfile rename to ml-notebook/Dockerfile diff --git a/mxnet-notebook/README.md b/ml-notebook/README.md similarity index 100% rename from mxnet-notebook/README.md rename to ml-notebook/README.md From 6e000aaf8dd3b7f37c74352d5033987acaaf6b2b Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Sun, 28 Jan 2018 05:18:04 +0000 Subject: [PATCH 06/10] completed testing of ml-notebook upgrade to include tensorflow --- ml-notebook/Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ml-notebook/Dockerfile b/ml-notebook/Dockerfile index 29e58b0..b39db38 100644 --- a/ml-notebook/Dockerfile +++ b/ml-notebook/Dockerfile @@ -5,13 +5,13 @@ LABEL io.whalebrew.name ml-notebook LABEL io.whalebrew.config.ports '["8888:8888"]' RUN apt-get update -y -RUN apt-get install -y python-pip python3-pip python-numpy python3-numpy +RUN apt-get install -y python-pip python3-pip python-dev python3-dev RUN pip install --upgrade pip -RUN pip install jupyter matplotlib gluon tensorflow +RUN pip install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras RUN pip3 install --upgrade pip -RUN pip3 install jupyter matplotlib gluon tensorflow +RUN pip3 install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras # Jupyter needs to create a sub directory in '.local', give the daemon permissions RUN mkdir /.local && chmod 777 /.local From 9be0375e20f4ba0669a0cae25fa16fa2dc5506e3 Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Mon, 29 Jan 2018 12:04:41 -0800 Subject: [PATCH 07/10] added additional packages for computer vision --- ml-notebook/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ml-notebook/Dockerfile b/ml-notebook/Dockerfile index b39db38..56e4b71 100644 --- a/ml-notebook/Dockerfile +++ b/ml-notebook/Dockerfile @@ -8,10 +8,10 @@ RUN apt-get update -y RUN apt-get install -y python-pip python3-pip python-dev python3-dev RUN pip install --upgrade pip -RUN pip install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras +RUN pip install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python RUN pip3 install --upgrade pip -RUN pip3 install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras +RUN pip3 install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python # Jupyter needs to create a sub directory in '.local', give the daemon permissions RUN mkdir /.local && chmod 777 /.local From c1cef9f1154fa811b1c75ee0f1722d96eab96525 Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Mon, 23 Apr 2018 13:40:59 +0100 Subject: [PATCH 08/10] added additional packages to the installation for things like curl and wget --- ml-notebook/Dockerfile | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ml-notebook/Dockerfile b/ml-notebook/Dockerfile index 56e4b71..0b3a854 100644 --- a/ml-notebook/Dockerfile +++ b/ml-notebook/Dockerfile @@ -4,11 +4,10 @@ FROM ubuntu LABEL io.whalebrew.name ml-notebook LABEL io.whalebrew.config.ports '["8888:8888"]' -RUN apt-get update -y -RUN apt-get install -y python-pip python3-pip python-dev python3-dev +RUN apt-get update -y && apt-get install -y python-pip python3-pip python-dev python3-dev python-tk wget curl unzip tree RUN pip install --upgrade pip -RUN pip install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python +RUN pip install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python jsanimation RUN pip3 install --upgrade pip RUN pip3 install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python From b2e99ab4b4c6dd6b2a8db528a88cee30466b41c8 Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Mon, 8 Oct 2018 12:39:02 +0100 Subject: [PATCH 09/10] added PyTorch as a library --- ml-notebook/Dockerfile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ml-notebook/Dockerfile b/ml-notebook/Dockerfile index 0b3a854..facaf52 100644 --- a/ml-notebook/Dockerfile +++ b/ml-notebook/Dockerfile @@ -4,13 +4,15 @@ FROM ubuntu LABEL io.whalebrew.name ml-notebook LABEL io.whalebrew.config.ports '["8888:8888"]' +ENV DEBIAN_FRONTEND noninteractive + RUN apt-get update -y && apt-get install -y python-pip python3-pip python-dev python3-dev python-tk wget curl unzip tree RUN pip install --upgrade pip -RUN pip install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python jsanimation +RUN pip install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python jsanimation torch RUN pip3 install --upgrade pip -RUN pip3 install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python +RUN pip3 install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python torch # Jupyter needs to create a sub directory in '.local', give the daemon permissions RUN mkdir /.local && chmod 777 /.local From 630ac0dd2dcc6524c1859f7da3760db189255d08 Mon Sep 17 00:00:00 2001 From: Jason Barto Date: Mon, 26 Nov 2018 23:09:01 +0000 Subject: [PATCH 10/10] added pytorch and keras --- ml-notebook/Dockerfile | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/ml-notebook/Dockerfile b/ml-notebook/Dockerfile index facaf52..b8d5bb9 100644 --- a/ml-notebook/Dockerfile +++ b/ml-notebook/Dockerfile @@ -1,19 +1,28 @@ # FROM mxnet/python -FROM ubuntu +FROM jupyter/pyspark-notebook LABEL io.whalebrew.name ml-notebook LABEL io.whalebrew.config.ports '["8888:8888"]' +LABEL io.whalebrew.config.volumes '["${PWD}:~/work"]' ENV DEBIAN_FRONTEND noninteractive +ENV GRANT_SUDO yes -RUN apt-get update -y && apt-get install -y python-pip python3-pip python-dev python3-dev python-tk wget curl unzip tree +USER root -RUN pip install --upgrade pip -RUN pip install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python jsanimation torch +RUN apt-get update -y && apt-get install -y python3-pip python3-dev python-tk wget curl unzip tree -RUN pip3 install --upgrade pip -RUN pip3 install jupyter matplotlib gluon tensorflow numpy pandas sklearn scipy keras mxnet opencv-python torch +# RUN pip3 install --upgrade pip +RUN pip install opencv-python gym awscli seaborn onnx featuretools # Jupyter needs to create a sub directory in '.local', give the daemon permissions -RUN mkdir /.local && chmod 777 /.local -ENTRYPOINT ["jupyter", "notebook", "--allow-root", "--ip='0.0.0.0'"] +# RUN mkdir /.local && chmod 777 /.local + +USER jovyan + +RUN conda update -n base conda +RUN conda install -y -c conda-forge tensorflow mxnet keras xgboost rise +RUN conda install -y -c pytorch pytorch torchvision +RUN mkdir ~/.local && chmod 777 ~/.local + +ENTRYPOINT ["/usr/local/bin/start-notebook.sh"]