58 lines
1.3 KiB
YAML
58 lines
1.3 KiB
YAML
apiVersion: v1
|
|
kind: Namespace
|
|
metadata:
|
|
name: devices
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: Middleware
|
|
metadata:
|
|
name: upgrade-insecure
|
|
namespace: devices
|
|
spec:
|
|
headers:
|
|
customResponseHeaders:
|
|
Content-Security-Policy: "upgrade-insecure-requests"
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: qidi-printer
|
|
namespace: devices
|
|
spec:
|
|
ports:
|
|
- { name: http, port: 80, targetPort: 80 }
|
|
- { name: websocket, port: 7125, targetPort: 7125 }
|
|
---
|
|
apiVersion: v1
|
|
kind: Endpoints
|
|
metadata:
|
|
name: qidi-printer
|
|
namespace: devices
|
|
subsets:
|
|
- addresses: [{ ip: 192.168.1.109 }]
|
|
ports:
|
|
- { name: http, port: 80 }
|
|
- { name: websocket, port: 7125 }
|
|
---
|
|
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: qidi-printer
|
|
namespace: devices
|
|
annotations:
|
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
|
traefik.ingress.kubernetes.io/router.middlewares: devices-upgrade-insecure@kubernetescrd,traefik-authentik@kubernetescrd
|
|
cert-manager.io/cluster-issuer: letsencrypt-prod
|
|
spec:
|
|
ingressClassName: traefik
|
|
tls:
|
|
- hosts: [print.${ROOT_DOMAIN}]
|
|
secretName: print-tls
|
|
rules:
|
|
- host: print.${ROOT_DOMAIN}
|
|
http:
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
backend:
|
|
service: { name: qidi-printer, port: { number: 80 } } |