mirror of
https://github.com/stellarshenson/stellars-jupyterhub-ds.git
synced 2026-03-08 06:00:29 +00:00
- Add optional CIFS mount support via compose_cifs.yml and .env - Create install_cert.sh for Linux (multi-distro support) - Enhance install_cert.bat with folder argument and help flags - Fix compose_override.yml stray quote, add idle culler defaults - Enhance generate-certs.sh with generic CN and verification - Update start.sh/stop.sh to support ENABLE_CIFS from .env - Update README with CIFS and certificate installation docs
2.5 KiB
2.5 KiB
Traefik Host-Based Routing Template
Template for deploying stellars-jupyterhub-ds with local Traefik reverse proxy and self-signed certificates.
Quick Start
-
Copy this folder to create a new deployment:
cp -r extra/traefik-host-based-routing /path/to/<name>_stellars_jupyterhub_ds cd /path/to/<name>_stellars_jupyterhub_ds -
Generate certificates for your domain:
./generate-certs.sh yourdomain.example.com -
Edit
compose_override.yml- replaceYOURDOMAINwith your domain -
Start:
./start.sh
Structure
<name>_stellars_jupyterhub_ds/
compose_override.yml # Local Traefik + JupyterHub config
compose_cifs.yml # Optional CIFS mount configuration
start.sh # Clone/update + start services
stop.sh # Stop services
generate-certs.sh # Certificate generation script
install_cert.sh # Linux certificate installer
install_cert.bat # Windows certificate installer
.env.example # Example environment config
certs/
tls.yml # Traefik TLS configuration
_.yourdomain.example.com/ # Generated wildcard cert
cert.pem # Certificate (import to browser)
key.pem # Private key
stellars-jupyterhub-ds/ # Cloned repository (gitignored)
Configuration
Edit compose_override.yml to customize:
- Domain name (replace
YOURDOMAINplaceholder) - Ports (default: 80/443)
- Environment variables (idle culler, signup)
- Network name
Optional CIFS Mount
To enable shared NAS storage for user containers:
- Edit
compose_cifs.ymlwith your NAS credentials - Create
.envfrom.env.example:cp .env.example .env - Set
ENABLE_CIFS=1in.env
Access
After deployment:
- JupyterHub: https://jupyterhub.yourdomain.example.com/
- Traefik: https://traefik.yourdomain.example.com
Certificate Installation
Import the self-signed certificate to your browser for trusted HTTPS:
Linux:
./install_cert.sh certs/_.yourdomain.example.com/
Windows:
install_cert.bat certs\_.yourdomain.example.com\
Commands
./start.sh # Clone repo (if missing) + start services
./start.sh --refresh # Pull latest upstream + start services
./stop.sh # Stop all services
To view logs:
docker compose -f stellars-jupyterhub-ds/compose.yml -f compose_override.yml logs -f jupyterhub