This is a JupyterHub deployment based on Docker currently in use at Université de Versailles.
- Containerized single user Jupyter servers, using DockerSpawner;
- Central authentication to the University CAS server;
- User data persistence;
- HTTPS proxy.
This deployment is described in depth in this blog post.
This deployment is ready to clone and roll on your own server. Read the blog post first, to be sure you understand the configuration.
Then, if you like, clone this repository and apply (at least) the following changes:
- In
.env
, set the variableHOST
to the name of the server you intend to host your deployment on. - In
reverse-proxy/traefik.toml
, edit the paths incertFile
andkeyFile
and point them to your own TLS certificates. Possibly edit thevolumes
section in thereverse-proyx
service indocker-compose.yml
. - In
jupyterhub/jupyterhub_config.py
, edit the "Authenticator" section according to your institution authentication server. If in doubt, read here.
Other changes you may like to make:
- Edit
jupyterlab/Dockerfile
to include the software you like. Do not forget to changejupyterhub/jupyterhub_config.py
accordingly, in particular the "user data persistence" section.
Once you are ready, build and launch the application with
docker-compose build
docker-compose up -d
Read the Docker Compose manual to learn how to manage your application.
Work partially funded by the EU H2020 project OpenDreamKit.