/pangeo-binder

Pangeo + Binder (dev repo for a binder/pangeo fusion concept)

BSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Pangeo's BinderHub

Deployment and configuration documentation files for the public binder.pangeo.io service.

Deployment Status

Branch Build Docs Deployment
staging CircleCI Documentation Status https://staging.binder.pangeo.io/
prod CircleCI Documentation Status https://binder.pangeo.io/

About Pangeo's Binder

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 the dask-kubernetes package.

For more information on the Pangeo project, check out the online documentation.

How to Deploy:

This repo is continuously deployed using CircleCI. It can also be deployed from a local computer using the following command:

cd helm-chart
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

More Information

The setup and configuration of Pangeo's BinderHub largely follows the Zero to Binderhub instructions. A few key distinctions are present:

  1. We define our own chart, pangeo-binder, so that we can mix in some Pangeo spccific 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.
  2. 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 helm-chart/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
    

Additional Links and Related Projects