65 lines
1.4 KiB
YAML
65 lines
1.4 KiB
YAML
apiVersion: traefik.containo.us/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: jellyfin-vue-ingress
|
|
namespace: media
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`media.kluster.moll.re`)
|
|
middlewares:
|
|
- name: jellyfin-websocket
|
|
kind: Rule
|
|
services:
|
|
- name: jellyfin-web
|
|
port: 80
|
|
tls:
|
|
certResolver: default-tls
|
|
---
|
|
apiVersion: traefik.containo.us/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: jellyfin-backend-ingress
|
|
namespace: media
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`media-backend.kluster.moll.re`)
|
|
middlewares:
|
|
- name: jellyfin-websocket
|
|
- name: jellyfin-server-headers
|
|
kind: Rule
|
|
services:
|
|
- name: jellyfin-server
|
|
port: 8096
|
|
tls:
|
|
certResolver: default-tls
|
|
---
|
|
apiVersion: traefik.containo.us/v1alpha1
|
|
kind: Middleware
|
|
metadata:
|
|
name: jellyfin-websocket
|
|
namespace: media
|
|
spec:
|
|
headers:
|
|
customRequestHeaders:
|
|
X-Forwarded-Proto: "https"
|
|
Upgrade: "websocket"
|
|
|
|
---
|
|
apiVersion: traefik.containo.us/v1alpha1
|
|
kind: Middleware
|
|
metadata:
|
|
name: jellyfin-server-headers
|
|
namespace: media
|
|
spec:
|
|
headers:
|
|
accessControlAllowCredentials: true
|
|
accessControlAllowHeaders: [ "Authorization","Content-Type" ] # "Accept","Origin"
|
|
accessControlAllowMethods: [ "GET","HEAD","OPTIONS" ] # "POST","PUT"
|
|
accessControlAllowOriginList:
|
|
- "*"
|
|
accessControlMaxAge: 100
|