For OpenShift 3 based around Kubernetes and Docker, (not the old OpenShift 2 which uses cartridges), have a look at:
This is not installing JupyterHub itself as you don't really need to since OpenShift itself provides the means to start up instances and manage them for you.
Of the two projects, the jupyter-stacks
project is giving you the ability to use OpenShift compatible versions of the Jupyter project stacks they make available as Docker images. Those images can be very fat though and slow to deploy as a result. The jupyter-notebooks
projects is a Source-to-Image (S2I) based solution which allows you to construct images with just the Python packages you need. In both cases using S2I capabilities they can pull in a set of notebooks from an existing source code repository, otherwise can still upload you notebooks and files, using a persistent volume to store them in if need be so don't loose work if the instance is restarted.