atlas/kubernetes/apps/devices/qidi.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 } }