56 lines
2.6 KiB
YAML
56 lines
2.6 KiB
YAML
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: appflowy-ingress
|
|
namespace: appflowy
|
|
annotations:
|
|
cert-manager.io/cluster-issuer: "letsencrypt-prod"
|
|
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
|
|
nginx.ingress.kubernetes.io/proxy-body-size: "50m"
|
|
spec:
|
|
ingressClassName: nginx
|
|
|
|
tls:
|
|
- hosts:
|
|
- orbit.panic.haus # ← replace with your public domain
|
|
secretName: appflowy-tls
|
|
|
|
rules:
|
|
- host: orbit.panic.haus
|
|
http:
|
|
paths:
|
|
# ┌──────────────────────────────────────────────────────────────────────────────┐
|
|
# │ 1) Admin UI (served under /console) │
|
|
# └──────────────────────────────────────────────────────────────────────────────┘
|
|
- path: /console
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: admin-frontend
|
|
port:
|
|
number: 80
|
|
|
|
# ┌──────────────────────────────────────────────────────────────────────────────┐
|
|
# │ 3) AppFlowy-Cloud API & Web │
|
|
# • If you want API served on /api, and the static Web on / │
|
|
# • You could also send all traffic to appflowy-web and let it call │
|
|
# • the backend at /api internally. │
|
|
# └──────────────────────────────────────────────────────────────────────────────┘
|
|
|
|
# a) Direct all `/api/*` calls to the backend service
|
|
- path: /api
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: appflowy-cloud
|
|
port:
|
|
number: 8000
|
|
|
|
# b) Everything else (root path) → appflowy-web (static UI)
|
|
- path: /
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: appflowy-web
|
|
port:
|
|
number: 80 |