From 1b977aabfab0153e1032b4699e07c7672ab4bfb5 Mon Sep 17 00:00:00 2001 From: dtoro Date: Sat, 6 Jun 2026 12:36:26 +0200 Subject: [PATCH] photos: clean up routing for Mulimage 2.0, add prism subdomain Update the photos.hubris.network block to match the current stack (PhotoPrism API + Go sidecar + SvelteKit). Add prism.hubris.network as a dedicated PhotoPrism vhost for the Prismatic mobile client. Co-Authored-By: Claude Opus 4.6 --- Caddyfile | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/Caddyfile b/Caddyfile index c18c0c4..e032927 100644 --- a/Caddyfile +++ b/Caddyfile @@ -155,28 +155,34 @@ blog.hubris.network { } photos.hubris.network { - # mule-image — PhotoPrism + Go sidecar + SvelteKit (post-Mulimage 2.0) + # Mulimage 2.0 — PhotoPrism + Go sidecar + SvelteKit (LXC 120) tls { dns ionos {env.IONOS_AUTH_API_TOKEN} } encode zstd gzip - # PhotoPrism API + OIDC initiation (/api/v1/oidc/login) + OIDC - # callback (/api/v1/oidc/redirect) all live here. + # PhotoPrism API + static assets + share links @pp path /api/v1/* /api/v1 /static/* /share/* reverse_proxy @pp 192.168.8.136:2342 - # After OIDC succeeds PhotoPrism stores the session in localStorage - # then `window.location.href = "/library/login"` to hand off. Bounce - # every /library/* request back to the SvelteKit root; the SPA reads - # the localStorage session via bootstrapSessionFromPhotoPrism(). + # OIDC hand-off: PhotoPrism redirects to /library/login after SSO; + # bounce back to / so the SvelteKit SPA picks up the session. redir /library / 302 redir /library/* / 302 - # mule-sidecar (Go) — keeps the /api/sidecar/ prefix + # Go sidecar — marks, folder mutations, duplicates, heap convert @sc path /api/sidecar/* reverse_proxy @sc 192.168.8.136:8000 - # Catch-all → nginx-on-120 serving the SvelteKit static bundle + # SvelteKit frontend (catch-all) reverse_proxy 192.168.8.136:3000 } +prism.hubris.network { + # PhotoPrism — direct access for Prismatic mobile client (LXC 120) + tls { + dns ionos {env.IONOS_AUTH_API_TOKEN} + } + encode zstd gzip + reverse_proxy 192.168.8.136:2342 +} + auth.hubris.network { tls { dns ionos {env.IONOS_AUTH_API_TOKEN}