# Traefik middlewares for the Research Stack Ingress # # forward-auth: Authentik SSO gate (applied to /apps/*, /server/*) # strip-apps-chat: strip /apps/chat prefix before forwarding to Hermes # strip-apps-budget: strip /apps/budget prefix # strip-server-status: strip /server/status prefix # strip-server-dash: strip /server/dash prefix # strip-server-vault: strip /server/vault prefix # strip-api-cred: strip /api/cred prefix # strip-api-registry: strip /api/registry prefix # strip-api-jobs: strip /api/jobs prefix # strip-api-blobs: strip /api/blobs prefix --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: authentik-forward-auth namespace: services spec: forwardAuth: address: http://authentik-server.services.svc.cluster.local/outpost.goauthentik.io/auth/traefik authResponseHeaders: - X-Authentik-Username - X-Authentik-Email - X-Authentik-Name - X-Authentik-Uid - X-Authentik-Jwt - X-Authentik-Meta-Jwt - X-Authentik-Meta-App - X-Authentik-Meta-Version --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-apps-chat namespace: services spec: stripPrefix: prefixes: - /apps/chat --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-apps-budget namespace: services spec: stripPrefix: prefixes: - /apps/budget --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-server-status namespace: services spec: stripPrefix: prefixes: - /server/status --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-server-dash namespace: services spec: stripPrefix: prefixes: - /server/dash --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-server-vault namespace: services spec: stripPrefix: prefixes: - /server/vault --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-api-cred namespace: services spec: stripPrefix: prefixes: - /api/cred --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-api-registry namespace: services spec: stripPrefix: prefixes: - /api/registry --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-api-jobs namespace: services spec: stripPrefix: prefixes: - /api/jobs --- apiVersion: traefik.io/v1alpha1 kind: Middleware metadata: name: strip-api-blobs namespace: services spec: stripPrefix: prefixes: - /api/blobs