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...

Jupyter on OpenShift Part 2: Using Jupyter Project Images

Jupyter on OpenShift Part 2: Using Jupyter Project Images

The quickest way to run a Jupyter Notebook instance in a containerised environment such as OpenShift, is to use the Docker-formatted images provided by the Jupyter Project developers. Unfortunately the Jupyter Project images do not run out of the box with the typical default configuration of an OpenShift cluster.

In this second post of this series about running Jupyter Notebooks on OpenShift, I am going to detail the steps required in order to run the Jupyter Notebook software on OpenShift.

Read More...

Jupyter on OpenShift: Using OpenShift for Data Analytics

Jupyter on OpenShift: Using OpenShift for Data Analytics

It is a commonly used catch phrase to say how ‘Software is Eating The World’ and how all companies are now software companies. It isn’t just the software that is important though, it is the data which is being generated by these systems. At the extreme end of the spectrum, companies can generate or collect quite massive data sets, and this is often referred to as the realm of ‘Big Data’.

No matter how much data you have, it is of no value if you don’t have a way to analyse the data and visualise the results in a meaningful way that you can act upon.

Read More...

OpenShift Pipelines with Jenkins Blue Ocean

OpenShift Pipelines with Jenkins Blue Ocean

Jenkins Blue Ocean is the new user experience for Jenkins to provide more flexibility for building and interacting with CI/CD pipelines. Using OpenShift certified Jenkins docker image and S2I process for customizing Jenkins, Blue Ocean can easily be enabled on Jenkins on OpenShift.

Read More...

Using Clojure on OpenShift

Using Clojure on OpenShift

I’ve been a Lisp guy since undergraduate days, and in the JVM phase of my career that has meant Clojure. Though it’s been many years since I coded as a day job, Clojure is my go-to for playing around to see how things work. This often makes for an extra bit of fun since there isn’t always a previously-blazed path for Clojure.

Read More...