JupyShare/compose.yml
2025-06-17 13:06:48 +02:00

37 lines
1.0 KiB
YAML

version: '3.8'
services:
notebook-viewer:
build: .
ports:
- "${FLASK_PORT:-5000}:5000"
volumes:
- "${JUPYTERHUB_SHARED_DIR:-./shared}:/shared:ro"
- "./notebooks:/notebooks:ro" # Additional notebooks directory
environment:
- JUPYTERHUB_SHARED_DIR=/shared
- FLASK_HOST=0.0.0.0
- FLASK_PORT=5000
- FLASK_DEBUG=${FLASK_DEBUG:-False}
- FLASK_SECRET_KEY=${FLASK_SECRET_KEY:-change-me-in-production}
- MAX_FILE_SIZE=${MAX_FILE_SIZE:-16777216}
- NOTEBOOKS_PER_PAGE=${NOTEBOOKS_PER_PAGE:-50}
- ALLOWED_EXTENSIONS=${ALLOWED_EXTENSIONS:-.ipynb,.py,.md}
- ENABLE_DOWNLOAD=${ENABLE_DOWNLOAD:-True}
- ENABLE_API=${ENABLE_API:-True}
- APP_TITLE=${APP_TITLE:-JupyterHub Notebook Viewer}
- THEME=${THEME:-dark}
env_file:
- .env
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:5000/"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
volumes:
shared:
driver: local