Commit Graph

47 Commits

Author SHA1 Message Date
stellarshenson
c1ae9938c1 feat: comprehensive UI styling for notifications, admin panel, tokens
- Add notifications page styling (form, textarea, results table)
- Unify button font sizes to 0.8rem across all pages
- Set collapsed user card padding to 0
- Add subtle hover effect on admin user rows (0.015 alpha)
- Style Add Users form panel with dark mode support
- Style authorization and token pages consistently
2026-01-06 22:26:19 +01:00
stellarshenson
d3fe78bb39 fix: sync NativeAuthenticator on admin panel rename
- SQLAlchemy event listener on orm.User.name intercepts ALL renames
- Removed broken SyncedUserAPIHandler (extra_handlers doesn't override)
- Removed RenameUserHandler (redundant with event listener)
- Added version display in browser console (styled badge)
- Build scripts source project.env for VERSION
2026-01-06 17:27:35 +01:00
stellarshenson
e001169663 feat: add user rename API and ENABLE_SIGNUP env variable
- RenameUserHandler: PATCH /hub/api/users/{username}/rename
  preserves NativeAuthenticator authorization on rename
- ENABLE_SIGNUP env var controls self-registration (default: 1)
- Updated README, compose.yml, Dockerfile with new config
2026-01-06 16:43:06 +01:00
stellarshenson
acd62e92bf feat: add CERTIFICATE_DOMAIN_NAME env variable for cert generation
- Add CERTIFICATE_DOMAIN_NAME to compose.yml (defaults to localhost)
- Update 00_generate_ssl_cert.sh to use env variable
- Allows custom domain names for self-signed certificates
2026-01-05 15:09:32 +01:00
stellarshenson
0bc9e28d5d chore: exclude watchtower from self-updates
Added com.centurylinklabs.watchtower.enable=false label to prevent
watchtower from updating itself during scheduled runs.
2025-12-19 02:19:19 +01:00
stellarshenson
e6ef8b46df fix: correct watchtower cron to 6-field format with seconds
Changed from '0 0 * * *' (5-field, ran hourly) to '0 0 0 * * *'
(6-field with seconds, runs daily at midnight UTC).
2025-12-08 17:14:34 +01:00
stellarshenson
17d60ae85b fix: remove unsupported --no-startup flag from watchtower
nickfedor/watchtower fork doesn't have --no-startup flag.
Default behavior (without --update-on-start) is to not check on startup.
2025-12-08 17:11:31 +01:00
stellarshenson
861ea0cd8c fix: prevent watchtower from checking images on container restart
Added --no-startup flag to Watchtower command in compose.yml.
Previously, Watchtower would check for image updates on every container
startup/restart. Now only runs at scheduled time (midnight daily).
2025-12-08 17:06:23 +01:00
stellarshenson
9357d8bdd6 chore: update watchtower to maintained fork (nickfedor/watchtower)
Changed from containrrr/watchtower:latest to nickfedor/watchtower:latest.
New image is actively maintained and compatible with latest Docker versions.

Version bump: 3.2.11 -> 3.3.1
2025-11-27 00:00:36 +01:00
stellarshenson
09e69e9467 fix: prevent Docker Compose from pulling image after build
- Add pull_policy: build to jupyterhub service
- Forces Docker Compose to use locally built image
- Prevents unnecessary pulls from Docker Hub after building

Now 'docker compose up' will use the local image built with 'make build'
2025-11-04 23:30:22 +01:00
stellarshenson
db483de36d feat: build jupyterhub_config.py into Docker image by default
- Change Docker build context from services/jupyterhub to project root
- Copy config/jupyterhub_config.py into image at /srv/jupyterhub/jupyterhub_config.py
- Users can still override with volume mount if needed
- Update all COPY paths in Dockerfile to reflect new build context
- Enables container to work out-of-the-box without external config file

Benefits:
- Image is self-contained and ready to run without dependencies
- Volume mount remains optional for custom configurations
- Default config includes GPU auto-detection and self-service features
2025-11-04 23:25:17 +01:00
stellarshenson
42b23a547d returned back to CUDA 12.9.1 2025-08-10 21:55:59 +02:00
stellarshenson
fd991f3d4d updated to have certs still sourced from a volume 2025-08-10 04:39:02 +02:00
stellarshenson
3e0780a41b added certs for traefik 2025-08-10 04:33:47 +02:00
stellarshenson
15d7b023fc removed need to certs volume 2025-08-10 04:33:04 +02:00
stellarshenson
a5ffcdb1f8 updated to have certificates mounted externally 2025-08-10 04:31:59 +02:00
stellarshenson
6502e8a109 updated with the latest CUDA version 13.0.0 2025-08-10 04:02:22 +02:00
stellarshenson
51106cb81b updated with enhanved autodetection routine for nvidia 2025-08-08 00:50:41 +02:00
stellarshenson
713706f6c9 standardised network name 2025-08-07 21:07:43 +02:00
stellarshenson
fd3e591aab updated with the fix to the shared volume 2025-08-07 21:05:44 +02:00
stellarshenson
800c259bee updated with the nvidia autodetection 2025-08-07 20:08:36 +02:00
stellarshenson
cb8e6e106f updated permissions 2025-08-07 17:22:30 +02:00
stellarshenson
8d8d874a1c updated names of the enable variables 2025-07-23 23:56:01 +02:00
stellarshenson
4d0d16e86f updated headers and license 2025-07-18 16:31:33 +02:00
stellarshenson
0dfe3bc882 updated 2025-07-18 02:50:24 +02:00
stellarshenson
444bb3fa6c updated permissions 2025-07-18 00:15:55 +00:00
stellarshenson
b24d3e828f updated with SSL off when traefik is on 2025-07-17 18:09:07 +02:00
stellarshenson
338e180d16 updated with config changes to traefik 2025-07-17 18:06:57 +02:00
stellarshenson
591d3a44f7 updated with the changes to certificate handling 2025-07-17 15:52:55 +02:00
stellarshenson
87e4d0746e updated to allow running with GPU support 2025-07-17 14:49:51 +02:00
stellarshenson
c65856dbfd updated config 2025-07-17 14:09:16 +02:00
stellarshenson
0f7f6fd1a1 moved to conform cloud development structure 2025-07-16 06:58:29 +02:00
stellarshenson
77c65c2ab4 fixed 2025-07-16 06:44:27 +02:00
stellarshenson
1471f659f6 simplified 2025-07-16 06:33:41 +02:00
stellarshenson
0648647b50 fixed location of home directory 2025-07-16 05:40:33 +02:00
stellarshenson
0376b50f28 updated files permissions 2025-07-16 05:15:04 +02:00
stellarshenson
9e3a636c4e updated dependencies 2025-07-16 00:42:53 +02:00
stellarshenson
baaab7d9e0 small fixs 2025-07-16 00:42:19 +02:00
stellarshenson
046987e36c added 2025-07-16 00:41:47 +02:00
stellarshenson
dd1d6e666e added watchtower 2025-07-16 00:41:12 +02:00
stellarshenson
86b5c5472e updated 2025-07-16 00:16:43 +02:00
stellarshenson
14cd01df3c added 2025-07-15 21:12:47 +02:00
stellarshenson
757156497c another attempt to get proxy working 2025-07-15 20:06:50 +02:00
stellarshenson
786475071b updated - now containers are launched with the correct url 2025-07-15 18:53:01 +02:00
stellarshenson
2c75bf0bd3 fixed generation of keys / certificates 2025-07-15 17:58:06 +02:00
stellarshenson
f78e859fc4 solution works (so far) 2025-07-15 17:29:47 +02:00
stellarshenson
dceaa7075b first build 2025-07-15 17:12:28 +02:00