This project creates a dockerized jupyterhub with Github authentication.
You may create an organisation at Github and add public members to restrict access. As alternatives you can grant access for users explicitly by name or use a different authentication method than Github OAuth2. Also a server with Docker running is nessecary.
You can only login with a Github account that belongs to an organisation. Create an OAuth application at the Github organisation settings. As callback URL enter https://YOUR_JUPYTERHUB_DOMAIN/hub/oauth_callback
Add the domain, client-id and client-secret at the jupyterhub_config.py
To build the docker images and restart jupyterhub and all running jupyter processes, simply run
sudo build-and-run-jupyterhub.sh
Caution: The script possibly kills all running notebook instances.
The server listens on port 80 and 443 on all interfaces.