Files
eveAI/scaleway/manifests/base/networking/ingress-https.yaml

57 lines
1.5 KiB
YAML

# HTTPS-only ingress with TLS configuration
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: eveai-staging-ingress
namespace: eveai-staging
labels:
app: eveai
environment: staging
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
nginx.ingress.kubernetes.io/proxy-body-size: "10m"
nginx.ingress.kubernetes.io/proxy-read-timeout: "300"
cert-manager.io/cluster-issuer: letsencrypt-staging
nginx.ingress.kubernetes.io/use-regex: "true"
nginx.ingress.kubernetes.io/rewrite-target: "/$2"
nginx.ingress.kubernetes.io/server-snippet: |
location = / {
return 301 /admin/;
}
spec:
ingressClassName: nginx
tls:
- hosts:
- evie-staging.askeveai.com
secretName: evie-staging-tls
rules:
- host: evie-staging.askeveai.com
http:
paths:
# Application services (strip prefix)
- path: /admin(/|$)(.*)
pathType: ImplementationSpecific
backend:
service:
name: eveai-app-service
port:
number: 80
- path: /api(/|$)(.*)
pathType: ImplementationSpecific
backend:
service:
name: eveai-api-service
port:
number: 80
- path: /chat-client(/|$)(.*)
pathType: ImplementationSpecific
backend:
service:
name: eveai-chat-client-service
port:
number: 80