3. Install BinderHub#
Hint
The images built by the Binder service are pushed to a private Harbor registry. The repository for configuration files: depositar/binder.depositar.io-deploy already includes the credentials for the registry.
Note
The tasks below should be finished in the Control Plane (the production machine iis-binderhub-1).
3.1. Install the helm chart#
git clone https://github.com/depositar/binder.depositar.io-deploy.git
cd binder.depositar.io-deploy
Install git-crypt and decrypt the secrets:
git-crypt unlock git_crypt_secret_key
Tip
The git-crypt symmetric key git_crypt_secret_key is required to decrypt the secrets.
Contact a system administrator if you need access to the git-crypt key.
Update the on-disk dependencies:
helm dependency update ./helm
Install BinderHub:
helm upgrade --cleanup-on-fail \
--install binderhub ./helm \
--namespace=binderhub \
--create-namespace \
-f ./helm/prod.yaml \
-f ./helm/secrets/secret.yaml
Check pod status:
kubectl get pods -n binderhub
NAME READY STATUS RESTARTS AGE
binder-5449d5ff5b-2w9x9 1/1 Running 0 56s
binderhub-dind-9bfmv 1/1 Running 0 56s
binderhub-image-cleaner-kj26v 1/1 Running 0 56s
binderhub-ingress-nginx-controller-5bd9459f5b-ckx7b 1/1 Running 0 56s
hub-6b9d7f7f8-wm6vp 1/1 Running 0 56s
proxy-6b9bd4c4c5-pbk96 1/1 Running 0 56s
user-scheduler-6b9d666f8f-b82dt 1/1 Running 0 56s
user-scheduler-6b9d666f8f-nvpn6 1/1 Running 0 56s
Then visit http://binder.depositar.io.
3.2. Secure with HTTPS#
First, create a Gandi Personal Access Token (PAT) with access to the domains.
Install cert-manager:
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.14.5/cert-manager.yaml
Check pod status:
kubectl get pods -n cert-manager
NAME READY STATUS RESTARTS AGE
cert-manager-cainjector-65c7bff89d-hh57j 1/1 Running 0 10s
cert-manager-cbcf9668d-sf55h 1/1 Running 0 10s
cert-manager-webhook-594cb9799b-vmlf2 1/1 Running 0 10s
Install cert-manager-webhook-gandi:
helm repo add cert-manager-webhook-gandi https://sintef.github.io/cert-manager-webhook-gandi
helm install cert-manager-webhook-gandi cert-manager-webhook-gandi/cert-manager-webhook-gandi --namespace cert-manager --set gandiPat=<PAT>
Update BinderHub with HTTPS:
helm upgrade --cleanup-on-fail \
--install binderhub ./helm \
--namespace=binderhub \
--create-namespace \
-f ./helm/prod.yaml \
-f ./helm/secure.yaml \
-f ./helm/secrets/secret.yaml
Then visit https://binder.depositar.io.