Jupyterhub, superset, flask and other docker containerized apps behind keycloak

I am putting together an environment to teach data analytics to students. For such a use case I need the following applications:

  • JupyterHub
  • Superset
  • dask.distributed (Scheduler)
  • Postgres

Putting this together without authentication is simple enough, but I got stuck with authentication. I think keycloak is the right solution but I wasn’t able to connect all the dots. I’d appreciate any advice you could give me.

I found some resources online but nothing that ties enough to my use case for me to be able to extrapolate the correct information.