Welcome! As a Jupyter project, we follow the Jupyter contributor guide.
To develop binderhub, you can use a local installation of JupyterHub on minikube, and run binderhub on the host system.
-
Install Minikube and start it:
minikube start
.For MacOS, you may find installing from https://github.com/kubernetes/minikube/releases may be more stable than using Homebrew.
-
Install helm
curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get | bash
Alternative methods for helm installation exist if you prefer installing without using the script.
-
Initialize helm in minikube
helm init
-
Add the JupyterHub helm charts repo:
helm repo add jupyterhub https://jupyterhub.github.io/helm-chart/ helm repo update
-
Install JupyterHub in minikube with helm
helm install jupyterhub/jupyterhub --version=v0.5.x-2140cd6 \ --name=binder \ --namespace=binder \ -f testing/minikube/jupyterhub-helm-config.yaml
-
Install binderhub:
python3 -m pip install -e .
-
Start binderhub with the testing config file:
python3 -m binderhub -f testing/minikube/binderhub_config.py
-
Visit http://localhost:8585
All features should work, including building and launching.
If you do not want to set up minikube but just want to hack on the html / css / js, there is a simpler method!
-
Install binderhub:
python3 -m pip install -e .
-
Run it!
python3 -m binderhub.app -f testing/localonly/binderhub_config.py
-
You can now access it locally at https://localhost:8585
Note that building and launching will not work!