# Production placeholder. Single-origin, path-based — mirrors # `Caddyfile.dev` but binds the real public host and lets Caddy # auto-provision TLS. Not used until prod-deploy plumbing exists; kept # in version control so the dev/prod surface stays identical. # # The host is supplied at deploy time via `GALAXY_PUBLIC_HOST` so the # same image is domain-agnostic (the fallback is only a placeholder). {$GALAXY_PUBLIC_HOST:galaxy.example} { handle_path /rpc/* { reverse_proxy galaxy-api:9090 } @api path /api/* /healthz handle @api { reverse_proxy galaxy-api:8080 } handle /game { redir * /game/ 308 } handle_path /game/* { root * /srv/galaxy-ui @immutable path /_app/immutable/* header @immutable Cache-Control "public, max-age=31536000, immutable" @dynamic not path /_app/immutable/* header @dynamic Cache-Control "no-cache, must-revalidate" try_files {path} /index.html file_server encode zstd gzip } handle { root * /srv/galaxy-site @immutable path /assets/* header @immutable Cache-Control "public, max-age=31536000, immutable" @dynamic not path /assets/* header @dynamic Cache-Control "no-cache, must-revalidate" try_files {path} {path}.html {path}/index.html /404.html file_server encode zstd gzip } }