Enabling notebooks for anonymous users¶
Interactive sessions launched from public notebooks can be made available to logged-out users. However, this feature is deactivated by default. In order to activate it, you need a secondary deployment of the renku-notebooks chart (including a secondary Jupyterhub as a dependency) to handle the anonymous (“temporary”) sessions. Note that this deployment has to run in a separate kubernetes namespace because of the way Jupyterhub operates.
The following steps assume that you have a local clone of the Renku repository and
pipenv
installed.Set
global.anonymousSessions.enabled: true
in your values.yaml file. If you are updating an existing deployment you have to setglobal.anonymousSessions.postgresPassword.overwriteOnHelmUpgrade: true
for the upgrade and then back to false for upcoming deployments.Deploy renkulab (or update your existing deployment) just as you would otherwise.
At the end of the deployment process, you will see a rendered command which will invoke a script
deploy-tmp-notebooks.py
. This script willCreate a secondary namespace
Copy the secret
renku-jupyterhub-tmp-postgres
to the secondary namespaceGet the supplied values from your helm renku deployment and derive a corresponding one for your your secondary renku-notebooks deployment.
Deploy the secondary renku-notebooks instance to the newly created namespace.
Some values for the secondary notebooks-deployment will likely differ from the corresponding ones used in the primary deployment (such as the notebook server resource options available to users). You can provide those using the flag
--extra-values <path-to-values-file>.yaml
. Typepipenv run ./deploy-tmp-notebooks.py --help
for more useful options of that script.