Ingress
231
Ingress für Websockets
Für Websockets benötige ich 2 Ingress Definitionendamit der Ingress .
Einen für den SubpfadPfad und einen für die Socket.io Library.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
certmanager.k8s.io/cluster-issuer: core-prod
nginx.ingress.kubernetes.io/proxy-read-timeout: "1800"
nginx.ingress.kubernetes.io/proxy-send-timeout: "1800"
nginx.ingress.kubernetes.io/rewrite-target: /$2
nginx.ingress.kubernetes.io/secure-backends: "true"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/websocket-services: websockets-service
name: "websockets-ingress"
spec:
ingressClassName: public
rules:
- host: kimo2007.dnshome.de
http:
paths:
- path: /ws2
pathType: Prefix
backend:
service:
name: websockets-service
port:
number: 80
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
certmanager.k8s.io/cluster-issuer: core-prod
nginx.ingress.kubernetes.io/proxy-read-timeout: "1800"
nginx.ingress.kubernetes.io/proxy-send-timeout: "1800"
nginx.ingress.kubernetes.io/secure-backends: "true"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/websocket-services: websockets-service
name: "websockets-socketio-ingress"
spec:
ingressClassName: public
rules:
- host: kimo2007.dnshome.de
http:
paths:
- path: /ws2/socket.io/*
pathType: ImplementationSpecific
backend:
service:
name: websockets-service
port:
number: 80
Express Javascript
var io = require('socket.io')(server,{
path:'/ws/socket.io',
methods: ["GET", "POST"],
credentials: true,
transports: ['websocket', 'polling'],
// rejectUnauthorized: false,
allowEIO3: true, // false by default
serveClient: true
});
var cors = require('cors');
app.use(cors());
