Jupyter on OpenShift Part 7: Adding the Image to the Catalog

Jupyter on OpenShift Part 7: Adding the Image to the Catalog

When you are deploying an application from the OpenShift web console you have the choice of deploying an image hosted on an external image registry, or an existing image which was built within the OpenShift cluster using either the Docker or Source build strategies. This is done from Deploy Image after having selected Add to project in the web console.

Read More...

Jupyter on OpenShift Part 6: Running as an Assigned User ID

Jupyter on OpenShift Part 6: Running as an Assigned User ID

When you deploy an application to OpenShift, by default it will be run with an assigned user ID unique to the project the application is running in. This user ID will override whatever user ID a Docker-formatted image may declare as the user it should be run as.

Running applications under a project as a user ID different to applications running in any other project is part of the multi-layered approach to security used in OpenShift. In this post, we will delve more into the topic of user IDs, as well as what changes would need to be made to the Jupyter Notebook image being used to enable it to run as the user ID OpenShift assigns to it.

Read More...

Managing the Lifecycle of OpenShift Clusters: Vetting OpenShift Installations

Managing the Lifecycle of OpenShift Clusters: Vetting OpenShift Installations

Whether installing a new release of a software package or just installing an update (such as a bug fix), it is wise to perform tests against the newly installed software in order to confirm that it is performing correctly in the target environment. This is especially true with OpenShift since it contains a number of open source components and can be deployed to a variety of environments, such as an on-prem datacenter, or a public or private cloud.

Read More...

Kubernetes Services By Example

Kubernetes Services By Example

When explaining Kubernetes to people new in the space I noticed that the concept of services is often not well understood. To help you better understand what services are and how you can troubleshoot them, we will have a look at a concrete setup and discuss the inner workings of services in this post.

Read More...

Enhancing your Builds on OpenShift: Chaining Builds

Enhancing your Builds on OpenShift: Chaining Builds

In addition to the typical scenario of using source code as the input to a build, OpenShift build capabilities provides another build input type called “Image source”, that will stream content from one image (source) into another (destination).

Using this, we can combine source from one or multiple source images. And we can pass one or multiple files and/or folders from a source image to a destination image. Once the destination image has been built it will be pushed into the registry (or an external registry), and will be ready to be deployed.

Read More...

Jupyter on OpenShift Part 5: Ad-hoc Package Installation

Jupyter on OpenShift Part 5: Ad-hoc Package Installation

The main reason persistent volumes are used is to store any application data. This is so that if a container running an application is restarted, that data is preserved and available to the new instance of the application.

When using an interactive coding environment such as Jupyter Notebooks, what you may want to persist can extend beyond just the notebooks and data files you are working with. Because it is an interactive environment using the dynamic scripting language Python, a user may want to install additional Python packages at the point they are creating a notebook.

Read More...

Jupyter on OpenShift Part 4: Adding a Persistent Workspace

Jupyter on OpenShift Part 4: Adding a Persistent Workspace

To provide persistence for any work done, it becomes necessary to copy any notebooks and data files from the image into the persistent volume the first time the image is started with that persistent volume. In this blog post I will describe how the S2I enabled image can be extended to do this automatically, as well as go into some other issues related to saving of your work.

Read More...

Jupyter on OpenShift Part 3: Creating a S2I Builder Image

Jupyter on OpenShift Part 3: Creating a S2I Builder Image

In the prior post in this series I described the steps required to run the Jupyter Notebook images supplied by the Jupyter Project developers. When run, these notebook images provide an empty workspace with no initial notebooks to work with. Depending on the image used, they would include a range of pre-installed Python packages, but they may not have all packages installed that a user needs.

Read More...

Containers are Linux

Containers are Linux

Containers are Linux. The operating system that revolutionized the data center over the past two decades is now aiming to revolutionize how we package, deploy and manage applications in the cloud. Of course you’d expect a Red Hatter to say that, but the facts speak for themselves.

Read More...