Difficulty: beginner
Estimated Time: 10-15 minutes

The Project Jupyter web site describes Jupyter notebooks as:

an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, data visualization, machine learning, and much more.

Jupyter notebooks can be deployed direct to Linux, macOS or Windows environments, or in containerized environments such as Docker, Kubernetes and OpenShift.

In this workshop you will learn how you can build a custom container image which incorporates a set of Jupyter notebooks and the packages they require, and deploy the image to OpenShift.

The examples shown will make use of sample Jupyter notebook images and templates from the Jupyter on OpenShift project, a community project for demonstrating how Jupyter notebooks and JupyterHub can be deployed to OpenShift.

In this workshop you learnt how you can build a custom container image which incorporates a set of Jupyter notebooks and the packages they require, and deploy the image to OpenShift. This was done first as two separate steps, and then as one combined step.

Further details on the example Jupyter notebook images and templates used in this workshop can be found at:

This Git repository is part of the Jupyter on OpenShift project, a community project for demonstrating how Jupyter notebooks and JupyterHub can be deployed to OpenShift.

Check out the other workshops here for details of how to create your own custom notebook images, create a persistent workspace for working with Jupyter notebooks, and how to deliver Jupyter notebooks to multiple users at the same time using JupyterHub.

For information on work done by Red Hat relevant to the data science, AI and ML space, visit:

Also check out the Red Hat projects radanalytics.io and Open Data Hub.

Building Custom Notebook Images

Step 1 of 7

Topic 1 - Loading the Notebook Images

The Jupyter on OpenShift project provides Jupyter notebook images which have been purpose built to work best with OpenShift.

Before you can deploy these Jupyter notebook images, you first need to load the images for the Jupyter notebook application into your project in OpenShift. You only need to load this once in a project. You can then use it in creating as many different Jupyter notebook deployments as you need.

In this workshop the step of loading the Jupyter notebook images has already been done for you.

To verify that the images have been loaded run the command:

oc get imagestreams -o name

You should see that the s2i-minimal-notebook image stream exists.

You can inspect the image stream by running:

oc describe imagestream s2i-minimal-notebook

You should see that the image stream includes tags for 3.5 and 3.6. These correspond to versions of the image for Python 3.5 and Python 3.6.