Deployment and configuration documentation files for the public binder.pangeo.io service.
Branch | Build | Docs | Deployment |
---|---|---|---|
staging | https://staging.binder.pangeo.io/ | ||
prod | https://binder.pangeo.io/ |
Monitoring of the binderhubs is done with Prometheus and Grafana.
Much like mybinder.org, the Pangeo's BinderHub deployment (binder.pangeo.io) allows users to create and share custom computing environments. The main distinction between the two BinderHubs is that Pangeo's BinderHub allows users to perform scalable computations using Dask.
For more information on the Pangeo project, check out the online documentation.
This repo is continuously deployed using CircleCI. It can also be deployed from a local computer using the following command:
deployment={staging,prod} # choose one
helm upgrade --wait --install --namespace=${deployment} ${deployment} \
pangeo-binder --version=v0.2.0 \
-f ./deploy/${deployment}.yaml \
-f ./secrets/${deployment}.yaml
The setup and configuration of Pangeo's BinderHub largely follows the Zero to Binderhub instructions. A few key distinctions are present:
- We define our own chart, pangeo-binder, so that we can mix in some Pangeo specific bits (e.g. a RBAC for dask-kubernetes). The pangeo-binder chart is based on the binderhub chart but most settings are indented under the
binderhub
chart level. The mybinder.org project does the same thing in mybinder.org-deploy. - The deployment steps in section 3.4 of the Zero to Binderhub documentation are modified slightly to account for the pangeo-binder chart. The steps are briefly outlined below:
# get current versions of the chart dependencies cd pangeo-binder helm dependency update # install the pangeo-binder chart helm install pangeo-binder --version=0.2.0-... --name=<choose-name> --namespace=<choose-namespace> -f secret.yaml -f config.yaml
- Pangeo Project: http://pangeo.io/
- Pangeo-Binder Issue Tracker: https://github.com/pangeo-data/pangeo-binder/issues
- Zero to BinderHub Documentation: https://binderhub.readthedocs.io/en/latest/
- MyBinder Documentation: https://mybinder.readthedocs.io/en/latest/
We deploy staging
and prod
BinderHubs. Before re-deploying prod
by merging
staging
into prod
, it's a good idea to test the deployment on some real-world
examples.
Create an empty pull request against the staging
branch with the text
test-staging
in the commit message.
.. code-block:: console
$ git checkout -b test-staging $ git commit --allow-empty -m 'test staging' $ git push -u origin
Once that pull request is opened, the script in .github/workflows/scripts/run_staging.py
is run. That will run the latest versions of the notebooks in http://gallery.pangeo.io/
against
- The staging binder deployment (e.g. https://staging.binder.pangeo.io/)
- The staging Docker image (e.g. https://github.com/pangeo-gallery/default-binder/tree/staging)