apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: jellyfin # < name of ingress entry namespace: jellyfin # < namespace where place the ingress enty annotations: kubernetes.io/ingress.class: "nginx" # < use the nginx ingress controller # nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" # < communicate in https with the backend (service/pod). With a "#" in front of http will be used. cert-manager.io/cluster-issuer: "letsencrypt-prod" # < use letsencrypt-prod application in kubernetes to generate ssl certificate # nginx.ingress.kubernetes.io/app-root: # < the root directory here if it's different from the root directory (like /web). spec: rules: - host: jellyfin.debont.net http: paths: - path: / pathType: Prefix # pathType no longer has a default value in v1; "Exact", "Prefix", or "ImplementationSpecific" must be specified backend: service: name: jellyfin-tcp port: name: http-tcp # < same label as the port in the service tcp file tls: # < placing a host in the TLS config will indicate a cert should be created - hosts: - jellyfin.mydomain.com secretName: jellyfin.mydomain.com-tls # < cert-manager will store the created certificate in this secret.