2026-09-10 01:35:59 +00:00
|
|
|
apiVersion: networking.k8s.io/v1
|
|
|
|
|
kind: Ingress
|
|
|
|
|
metadata:
|
|
|
|
|
name: gotify
|
|
|
|
|
namespace: notifications
|
|
|
|
|
annotations:
|
|
|
|
|
nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
|
|
|
|
|
nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
|
2026-09-15 18:01:48 +09:00
|
|
|
# WebSocket support for Gotify client connections (/stream endpoint)
|
|
|
|
|
# nginx-ingress handles Upgrade/Connection headers natively with http/1.1
|
2026-09-10 01:35:59 +00:00
|
|
|
nginx.ingress.kubernetes.io/proxy-http-version: "1.1"
|
2026-10-27 12:06:00 -07:00
|
|
|
# Single sign-on. Gotify has no OIDC, so every request is handed to
|
|
|
|
|
# oauth2-proxy for an allow or deny decision. oauth2-proxy skips the token
|
|
|
|
|
# API paths itself, so /message keeps Gotify's own X-Gotify-Key check.
|
|
|
|
|
nginx.ingress.kubernetes.io/auth-url: "http://gotify-oauth2-proxy.notifications.svc.cluster.local:4180/oauth2/auth"
|
|
|
|
|
nginx.ingress.kubernetes.io/auth-signin: "https://gotify.riotpiao.com/oauth2/start?rd=$scheme://$host$request_uri"
|
|
|
|
|
nginx.ingress.kubernetes.io/auth-response-headers: "x-auth-request-user,x-auth-request-email"
|
2026-09-10 01:35:59 +00:00
|
|
|
spec:
|
|
|
|
|
ingressClassName: nginx
|
|
|
|
|
rules:
|
|
|
|
|
- host: gotify.riotpiao.com
|
|
|
|
|
http:
|
|
|
|
|
paths:
|
|
|
|
|
- path: /
|
|
|
|
|
pathType: Prefix
|
|
|
|
|
backend:
|
|
|
|
|
service:
|
|
|
|
|
name: gotify
|
|
|
|
|
port:
|
|
|
|
|
number: 80
|