[GH-ISSUE #383] Service needs appProtocol hint for some Gateway API controllers (e.g., kgateway) for WebSocket support #124

Closed
opened 2026-10-18 21:06:23 +00:00 by bsakaguchi · 2 comments
Owner

Originally created by @pwhack on GitHub (Apr 21, 2026).
Original GitHub issue: https://github.com/open-webui/helm-charts/issues/383

Hi,

I'm having issues with the Open WebUI Helm chart version 12.13.0 combined with kgateway as my Gateway API controller. Kgateway/Envoy appear to want appProtocol hints on Service objects when WebSockets are used. This seems related to Gateway API GEP-1911.

Without this protocol hint, when I enter a chat prompt into Open WebUI, I get an error saying "JSON.parse: unexpected character at line 1 column 1 of the JSON data". And in my browser tools I see HTTP 403 errors trying to initiate WSS connections. As soon as I manually edit the "open-webui" Service object from...

...
spec:
  ports:
    - name: http
      protocol: TCP
      port: 80
      targetPort: http
...

...to...

...
spec:
  ports:
    - name: http
      protocol: TCP
      appProtocol: kubernetes.io/ws
      port: 80
      targetPort: http
...

...then Open WebUI works fine and I see the model response.

I'm happy to submit a PR adding this line to the template, however, I don't know know the consequences of this change for other users. Searching the repo issues yielded no hits for this so maybe I'm the first to encounter this combination. Or I'm just doing something wrong.

Originally created by @pwhack on GitHub (Apr 21, 2026). Original GitHub issue: https://github.com/open-webui/helm-charts/issues/383 Hi, I'm having issues with the Open WebUI Helm chart version 12.13.0 combined with kgateway as my Gateway API controller. Kgateway/Envoy appear to want `appProtocol` hints on `Service` objects when WebSockets are used. This seems related to Gateway API [GEP-1911](https://gateway-api.sigs.k8s.io/geps/gep-1911/). Without this protocol hint, when I enter a chat prompt into Open WebUI, I get an error saying "JSON.parse: unexpected character at line 1 column 1 of the JSON data". And in my browser tools I see HTTP 403 errors trying to initiate WSS connections. As soon as I manually edit the "open-webui" `Service` object from... ``` ... spec: ports: - name: http protocol: TCP port: 80 targetPort: http ... ``` ...to... ``` ... spec: ports: - name: http protocol: TCP appProtocol: kubernetes.io/ws port: 80 targetPort: http ... ``` ...then Open WebUI works fine and I see the model response. I'm happy to submit a PR adding this line to the [template](https://github.com/open-webui/helm-charts/blob/d6e669c20dd5569c525fc91c6178916b7509aca9/charts/open-webui/templates/service.yaml), however, I don't know know the consequences of this change for other users. Searching the repo issues yielded no hits for this so maybe I'm the first to encounter this combination. Or I'm just doing something wrong.
Author
Owner

@james-westbrook commented on GitHub (Apr 21, 2026):

Hey @pwhack, the Gateway config is relatively recent to Open WebUI, so I'm not surprised. Feel free to submit a PR, I'd just look for it to:

  • Have an optional appProtocol line in the template configured by value, that only gets added if the appropriate value is set
  • Include a commented out value example mentioning that Kgateway/ Envoy expect this

Thank you!

<!-- gh-comment-id:4289736152 --> @james-westbrook commented on GitHub (Apr 21, 2026): Hey @pwhack, the Gateway config is relatively recent to Open WebUI, so I'm not surprised. Feel free to submit a PR, I'd just look for it to: - Have an optional `appProtocol` line in the template configured by value, that only gets added if the appropriate value is set - Include a commented out value example mentioning that Kgateway/ Envoy expect this Thank you!
Author
Owner

@james-westbrook commented on GitHub (Jun 28, 2026):

Should be fixed via https://github.com/open-webui/helm-charts/pull/397, please tag me if anything else is missing

<!-- gh-comment-id:4827064265 --> @james-westbrook commented on GitHub (Jun 28, 2026): Should be fixed via https://github.com/open-webui/helm-charts/pull/397, please tag me if anything else is missing
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
open-webui/helm-charts#124
No description provided.