apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: gravl-tls-cert namespace: gravl-staging spec: secretName: gravl-tls-secret issuerRef: name: letsencrypt-staging kind: ClusterIssuer dnsNames: - gravl.homelab.local - api.gravl.homelab.local - "*.gravl.homelab.local" --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: gravl-ingress namespace: gravl-staging annotations: kubernetes.io/ingress.class: "nginx" cert-manager.io/cluster-issuer: "letsencrypt-staging" nginx.ingress.kubernetes.io/ssl-redirect: "true" spec: tls: - hosts: - gravl.homelab.local - api.gravl.homelab.local secretName: gravl-tls-secret rules: - host: gravl.homelab.local http: paths: - path: / pathType: Prefix backend: service: name: gravl-frontend port: number: 80 - host: api.gravl.homelab.local http: paths: - path: / pathType: Prefix backend: service: name: gravl-backend port: number: 3001