26 lines
836 B
YAML
26 lines
836 B
YAML
|
|
# jupyterhub — multi-user notebook server (cloud only)
|
||
|
|
# Networks: app (UI proxied by nginx) + mgmt (Docker socket for DockerSpawner)
|
||
|
|
|
||
|
|
services:
|
||
|
|
jupyterhub:
|
||
|
|
image: jupyterhub/jupyterhub:5
|
||
|
|
restart: unless-stopped
|
||
|
|
networks: [app, mgmt]
|
||
|
|
volumes:
|
||
|
|
- jupyterhub-data:/srv/jupyterhub
|
||
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
||
|
|
- ./config/jupyterhub_config.py:/srv/jupyterhub/jupyterhub_config.py:ro
|
||
|
|
environment:
|
||
|
|
TZ: ${TZ:-Europe/Amsterdam}
|
||
|
|
DOCKER_NOTEBOOK_IMAGE: ${JUPYTER_NOTEBOOK_IMAGE:-jupyter/datascience-notebook:latest}
|
||
|
|
DOCKER_NETWORK_NAME: cloud-app
|
||
|
|
# TODO: DockerSpawner config in jupyterhub_config.py; Keycloak OAuthAuthenticator;
|
||
|
|
# preinstalled libraries; per-user persistent volumes; CPU/memory limits
|
||
|
|
|
||
|
|
networks:
|
||
|
|
app:
|
||
|
|
mgmt:
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
jupyterhub-data:
|