apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: guacamole-envoy-tls namespace: guacamole spec: secretName: guacamole-envoy-tls issuerRef: kind: ClusterIssuer name: letsencrypt-production dnsNames: - guacamole.kube.huskypup.net --- apiVersion: gateway.networking.k8s.io/v1 kind: Gateway metadata: name: guacamole namespace: guacamole spec: gatewayClassName: envoy-gateway listeners: - name: https hostname: guacamole.kube.huskypup.net port: 443 protocol: HTTPS tls: mode: Terminate certificateRefs: - kind: Secret name: guacamole-envoy-tls --- apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute metadata: name: guacamole namespace: guacamole spec: parentRefs: - name: guacamole sectionName: https hostnames: - guacamole.kube.huskypup.net rules: # Legacy path support: https://host/guacamole/* -> https://host/* - matches: - path: type: PathPrefix value: /guacamole filters: - type: URLRewrite urlRewrite: path: type: ReplacePrefixMatch replacePrefixMatch: / backendRefs: - name: guacamole port: 8080 # Standard root routing - matches: - path: type: PathPrefix value: / backendRefs: - name: guacamole port: 8080