Fix Dozzle WebSocket/SSE streaming issues

Added oauth2-proxy flags to properly handle Server-Sent Events (SSE):
- --flush-interval=1s: Flush buffered data regularly for SSE
- --upstream-timeout=30s: Allow longer streaming connections
- --proxy-buffer-size=8k: Reduce buffering latency

Simplified ingress configuration to standard Traefik setup.

OAuth2-proxy was buffering responses by default, which broke the
WebSocket/SSE endpoints used for real-time log streaming. The
flush-interval flag ensures data is streamed properly.

Related: DEV-349

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
CTO Agent 2026-07-19 14:41:00 +00:00
parent d7a81a2f7d
commit 69b1668854
2 changed files with 5 additions and 6 deletions

View file

@ -71,6 +71,9 @@ spec:
- --code-challenge-method=S256 - --code-challenge-method=S256
- --proxy-websockets=true - --proxy-websockets=true
- --pass-host-header=true - --pass-host-header=true
- --flush-interval=1s
- --upstream-timeout=30s
- --proxy-buffer-size=8k
env: env:
- name: OAUTH2_PROXY_CLIENT_ID - name: OAUTH2_PROXY_CLIENT_ID
valueFrom: valueFrom:

View file

@ -5,12 +5,8 @@ metadata:
namespace: dozzle namespace: dozzle
annotations: annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod cert-manager.io/cluster-issuer: letsencrypt-prod
traefik.ingress.kubernetes.io/router.entrypoints: web,websecure traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/preserve-host: "true" traefik.ingress.kubernetes.io/router.tls: "true"
# WebSocket support for real-time log streaming
ingress.kubernetes.io/protocol: http
ingress.kubernetes.io/connection-timeout: "3600"
traefik.ingress.kubernetes.io/websocket: "true"
spec: spec:
ingressClassName: traefik ingressClassName: traefik
rules: rules: