Skip to content

Commit

Permalink
Merge pull request #1561 from thehyve/installation-documentation-updates
Browse files Browse the repository at this point in the history
Update installation documentation.
  • Loading branch information
ewelinagr authored Sep 9, 2024
2 parents 9b4877c + fa50356 commit 00541e2
Showing 1 changed file with 16 additions and 44 deletions.
60 changes: 16 additions & 44 deletions README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2601,16 +2601,16 @@ ghcr.io/thehyve/helm-charts/fairspace (GitHub Packages of the Fairspace reposito

We provide a number of charts for various components that can be used in combination, or separately:

- _Fairspace Keycloak_: Installs Keycloak and configures an ingress node for Keycloak. This chart is not required if Keycloak is already installed separately. You still need to <<Configure a Keycloak realm for Fairspace,configure a Keycloak realm for Fairspace>>.
(Chart source: https://github.com/thehyve/fairspace-keycloak[].)
- _Fairspace_: Installs the Fairspace application, including the _saturn_ backend, _pluto_ proxy, _mercury_ frontend and a PostgreSQL database, and configures an ingress node for Fairspace.
- _Jupyter_: Installs a version of Jupyter Hub that uses Keycloak for authentication and launches a link:https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-datascience-notebook[jupyter-datascience-notebook] based Jupyter notebook with the Fairspace collections file system mounted automatically. (Chart source: https://github.com/thehyve/fairspace-jupyter[].)
- _Fairspace Keycloak_: Installs Keycloak and configures an ingress node for Keycloak. This chart is not required if Keycloak is already installed separately. You still need to <<Configure a Keycloak realm for Fairspace,configure a Keycloak realm for Fairspace>>
(chart source: https://github.com/thehyve/fairspace-keycloak[]).
- _Fairspace_: Installs the Fairspace application, including the _saturn_ backend, _pluto_ proxy, _mercury_ frontend and a PostgreSQL database, and configures an ingress node for Fairspace (chart source: https://github.com/thehyve/fairspace[]).
- _Jupyter_: Installs a version of Jupyter Hub that uses Keycloak for authentication and launches a link:https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-datascience-notebook[jupyter-datascience-notebook] based Jupyter notebook with the Fairspace collections file system mounted automatically (chart source: https://github.com/thehyve/fairspace-jupyter[]).

==== Instructions for deploying to Google Cloud

===== Download and install helm and gcloud

* Download ``helm 3.14.3`` from https://github.com/helm/helm/releases/tag/v3.14.3
* Download ``helm 3.14.3`` (or higher) from https://github.com/helm/helm/releases/tag/v3.14.3
* Extract the downloaded archive to ``~/bin/helm`` and check with:
+
[source, shell]
Expand All @@ -2624,22 +2624,11 @@ We provide a number of charts for various components that can be used in combina
+
[source, shell]
----
gcloud container clusters get-credentials <cluster id> --zone europe-west1-b
----
+
Use ``fairspacecicluster`` as cluster id for the CI environment.
Ensure that your Google account has access to the ``fairspace-207108`` GCP project and set the project property
+
[source, shell]
----
gcloud config set project fairspace-207108
----
Log in using
+
[source, shell]
----
gcloud auth login
gcloud iam service-accounts keys create credentials.json --iam-account <iam account id, e.g. [email protected]>
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json
gcloud container clusters get-credentials <cluster id, e.g. fairspacecicluster> --zone europe-west1-b --project <project id, e.g. fairspace-207108>
----

* Check if all tools are correctly installed:
+
[source, shell]
Expand All @@ -2652,18 +2641,6 @@ kubectl get ns
~/bin/helm/helm list -A
----

===== Initialise helm and login to Fairspace GitHub Packages
[source, shell]
----
# Add the stable repo (prepare and use personal access token, also known as PAT, within your GitHub account as a password)
~/bin/helm/helm registry login ghcr.io/fairspace/helm-charts --username <your github account> --password-stdin
# (Optional) Add the fairspace repo via the GCS plugin for writing
~/bin/helm/helm plugin install https://github.com/hayorov/helm-gcs.git --version 0.4.2
gcloud iam service-accounts keys create credentials.json --iam-account [email protected]
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json
~/bin/helm/helm repo add fairspace-gcs gs://fairspace-helm
----

===== Configure DNS

Find the address of the Kubernetes cluster:
Expand All @@ -2676,16 +2653,10 @@ Create DNS records for the ``keycloak.example.com``, ``fairspace.example.com`` a
===== Fetch charts
[source, shell]
----
# Update repo
~/bin/helm/helm repo update
# List available fairspace-keycloak chart versions
~/bin/helm/helm search repo --versions fairspace/fairspace-keycloak
# Fetch the fairspace-keycloak chart
~/bin/helm/helm pull fairspace/fairspace-keycloak --version 0.7.0
# List available fairspace chart versions
~/bin/helm/helm search repo --versions fairspace/fairspace
~/bin/helm/helm pull oci://ghcr.io/thehyve/fairspace/helm-charts/fairspace-keycloak --version 0.7.0
# Fetch the fairspace chart
~/bin/helm/helm pull fairspace/fairspace --version 2.0.1
~/bin/helm/helm pull oci://ghcr.io/thehyve/fairspace/helm-charts/fairspace --version 2.0.1
----

===== Deploy Keycloak
Expand All @@ -2698,7 +2669,7 @@ Create a new deployment (called _release_ in helm terminology) and
install the Fairspace Keycloak chart:
[source, shell]
----
~/bin/helm/helm install keycloak-new fairspace/fairspace-keycloak --version 0.7.0 --namespace keycloak-new \
~/bin/helm/helm install keycloak-new fairspace-keycloak-0.7.0.tgz --namespace=keycloak-new \
-f /path/to/fairspace-keycloak-values.yaml
----
You can pass values files with ``-f`` or ``--values``.
Expand Down Expand Up @@ -2773,7 +2744,7 @@ Create a new deployment (called _release_ in helm terminology) and
install the Fairspace chart:
[source, shell]
----
~/bin/helm/helm install fairspace-new fairspace/fairspace --version 2.0.1 --namespace fairspace-new \
~/bin/helm/helm install fairspace-new fairspace-2.0.1.tgz --namespace=fairspace-new \
-f /path/to/values.yaml --set-file saturn.vocabulary=/path/to/vocabulary.ttl --set-file saturn.views=/path/to/views.yaml
----
You can pass values files with ``-f`` and provide a file for a specified
Expand Down Expand Up @@ -2870,7 +2841,7 @@ Additionally, to include custom icons for `fairspace.icons` option, you need to

[source, shell]
----
~/bin/helm/helm install fairspace-new fairspace/fairspace --version 2.0.1 --namespace fairspace-new \
~/bin/helm/helm install fairspace-new fairspace-2.0.1.tgz --namespace=fairspace-new \
-f /path/to/values.yaml --set-file saturn.vocabulary=/path/to/vocabulary.ttl --set-file saturn.views=/path/to/views.yaml --set-file svgicons.extra-icon=/path/to/extra-icon.svg
----

Expand All @@ -2886,7 +2857,8 @@ Create a new deployment (called _release_ in helm terminology) and
install the Jupyter Hub chart:
[source, shell]
----
~/bin/helm/helm install jupyterhub-new fairspace/jupyter --version 0.8.9 --namespace jupyterhub-new \
~/bin/helm/helm pull oci://ghcr.io/thehyve/fairspace/helm-charts/fairspace-jupyter --version 0.8.9
~/bin/helm/helm install jupyterhub-new fairspace-jupyter-0.8.9.tgz --namespace=jupyterhub-new \
-f /path/to/values.yaml
----
You can pass values files with ``-f``.
Expand Down

0 comments on commit 00541e2

Please sign in to comment.