# ingress.yaml # Definiert einen Kubernetes Ingress, um externen Zugriff auf den Service zu ermöglichen. # Standardmäßig ist dieser Ingress deaktiviert und muss in 'values.yaml' aktiviert werden. {{- if .Values.ingress.enabled -}} # Dieses Template wird nur gerendert, wenn 'ingress.enabled' true ist. apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: {{ include "paperless-ai.fullname" . }} # Der Name des Ingress labels: {{- include "paperless-ai.labels" . | nindent 4 }} # Allgemeine Labels für den Ingress. {{- with .Values.ingress.annotations }} annotations: {{- toYaml . | nindent 4 }} # Zusätzliche Anmerkungen für den Ingress (z.B. für Cert-Manager oder Nginx-Controller). {{- end }} spec: {{- if .Values.ingress.className }} ingressClassName: {{ .Values.ingress.className }} # Der Name der Ingress-Klasse. {{- end }} {{- if .Values.ingress.tls }} tls: {{- toYaml .Values.ingress.tls | nindent 4 }} # TLS-Konfiguration für HTTPS. {{- end }} rules: {{- range .Values.ingress.hosts }} - host: {{ .host | quote }} # Der Hostname für den Ingress. http: paths: {{- range .paths }} - path: {{ .path }} # Der Pfad, der weitergeleitet werden soll. pathType: {{ .pathType }} # Der Typ des Pfades (Prefix, Exact, ImplementationSpecific). backend: service: name: {{ include "paperless-ai.fullname" $ }} # Name des Services, an den weitergeleitet wird. port: number: {{ $.Values.service.port }} # Port des Services. {{- end }} {{- end }} {{- end }}