blockdiag -T svg docker-image-hierarchy.diag
- Replicate all of the functionality of Google's Swift for Tensorflow images (shown on the left in the overview diagram)
- Replicate some of the functionality of Jupyter's Docker Stacks images (shown on the right in the overview diagram)
- Replicate some of the functionality of Google Colab (shown on the bottom left in the overview diagram)
- Built from the nvidia/cuda:10.2-cudnn7-devel-ubuntu18.04 image
- Comparable to the google/base-deps image (see below for differences)
tini
as the container entrypoint- No gym, numpy, matplotlib (installed in swift-jupyter below)
- Built from the swift-jupyter-base image
- Minimally functional Jupyter Notebook server
- Swift for Tensorflow kernel
- Comparable to the google/swift-jupyter and jupyter/base-notebook images (see below for differences)
tini
as the container entrypoint- No Python 2.7 integration
- Node installed for better Jupyter Lab support
- Preinstalled packages:
- pip: gym, ipykernel, jupyterhub, jupyterlab, jupyter-kernel-gateway, jupyter-kernel-test, notebook, matplotlib, numpy, pandas
- No
start.sh
,start-notebook.sh
, orstart-singleuser.sh
- No conda installation
- Only root user
- No self-signed HTTPS certificate
- No
sudo
(passwordless or otherwise) - None of the common features
- Many of the binary dependencies not installed
- Built from the swift-jupyter image
- Comparable to the jupyter/tensorflow-notebook image (see below for differences)
- Preinstalled packages:
- pip: beautifulsoup, bokeh, bottleneck, cloudpickle, cython, dask, dill, h5py, ipywidgets, ipympl, keras, numba, numexpr, matplotlib, pandas, patsy, protobuf, scikit-image, scikit-learn, scipy, seaborn, sqlalchemy, statsmodels, sympy, tables (pytables), tensorflow, vincent, widgetsnbextensions, xlrd
- apt-get: dvipng (for latex labels), emacs, ffmpeg (for matplotlib animation), hdf5, inkscape, jed, nano, netcat, openblas, python-dev, texlive, vim
- No facets installation
- Tensorflow installed
To improve Docker image building, use the new Docker Buildkit system by either setting the DOCKER_BUILDKIT
environment variable or configuring the Docker daemon.json
. The simplest way is by prepending DOCKER_BUILDKIT=1
to your docker build
command:
DOCKER_BUILDKIT=1 docker build --file ./swift-jupyter-scipy/Dockerfile --tag ctmnt/swift-jupyter-scipy .