Is there currently a way to serve websockets from an application deployed on Okteto cloud given the okteto-specific limitations around Ingress
es and Service
s ?
I've read that this would only be possible using a Service
or Ingress
of type LoadBalancer
, so that is what I've tried.
But, according to the Okteto docs, Service
s of type LoadBalancer
(or NodePort
) are managed. In practice they seem to get transformed automatically into a ClusterIP Service
, + exposed to the internet on an automatic URL.
Do these handle only HTTP
requests ? Or is there a way to make them handle other kinds of connections based on TCP or UDP (like websockets) ?
You don't need a LoadBalancer to use WebSockets, they can be served from an Ingress with a ClusterIP as well (this is what Okteto Cloud uses for our endpoints). This setup supports HTTPS, WebSockets and even GRPC-based endpoints.
This sample shows you how to use WebSockets on a Node app deployed in Okteto Cloud, hope it helps! (it uses okteto-generated Kubernetes manifests, but you can also bring your own).