49 lines
1.8 KiB
Caddyfile
49 lines
1.8 KiB
Caddyfile
# ── Authelia forward auth snippet ────────────────────────────────────────────
|
|
(authelia) {
|
|
forward_auth authelia:9091 {
|
|
uri /api/authz/forward-auth
|
|
copy_headers Remote-User Remote-Groups Remote-Name Remote-Email
|
|
}
|
|
}
|
|
|
|
# ── Authelia login portal ─────────────────────────────────────────────────────
|
|
auth.{$MY_DOMAIN} {
|
|
reverse_proxy authelia:9091
|
|
log {
|
|
output file /var/log/caddy/auth.log
|
|
}
|
|
}
|
|
|
|
# ── AI Portal (landing page / stack switcher) ─────────────────────────────────
|
|
localai.{$MY_DOMAIN} {
|
|
import authelia
|
|
reverse_proxy 192.0.2.1:8080
|
|
log {
|
|
output file /var/log/caddy/localai.log
|
|
}
|
|
}
|
|
|
|
# ── Open WebUI (Chat) ─────────────────────────────────────────────────────────
|
|
chat.{$MY_DOMAIN} {
|
|
import authelia
|
|
reverse_proxy 192.0.2.1:3000
|
|
log {
|
|
output file /var/log/caddy/chat.log
|
|
}
|
|
}
|
|
|
|
# ── InvokeAI (Images) ─────────────────────────────────────────────────────────
|
|
images.{$MY_DOMAIN} {
|
|
import authelia
|
|
reverse_proxy 192.0.2.1:9090
|
|
log {
|
|
output file /var/log/caddy/images.log
|
|
}
|
|
}
|
|
|
|
# ── Template for future services ──────────────────────────────────────────────
|
|
# newservice.{$MY_DOMAIN} {
|
|
# import authelia
|
|
# reverse_proxy INTERNAL_IP:PORT
|
|
# }
|