--- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: piefed-ingress namespace: piefed-application labels: app.kubernetes.io/name: piefed app.kubernetes.io/component: ingress annotations: kubernetes.io/ingress.class: nginx # NGINX Ingress configuration nginx.ingress.kubernetes.io/proxy-body-size: "20m" nginx.ingress.kubernetes.io/client-max-body-size: "20m" nginx.ingress.kubernetes.io/proxy-read-timeout: "300" nginx.ingress.kubernetes.io/proxy-send-timeout: "300" nginx.ingress.kubernetes.io/backend-protocol: "HTTP" # ActivityPub federation rate limiting - PieFed has HEAVIEST federation traffic # Based on migration document: "58 federation requests in 30 logs, constant ActivityPub /inbox POST requests" # Uses real client IPs from CF-Connecting-IP header (configured in nginx ingress controller) nginx.ingress.kubernetes.io/limit-rps: "20" nginx.ingress.kubernetes.io/limit-burst-multiplier: "15" # 300 burst capacity (20*15) for federation bursts spec: ingressClassName: nginx tls: [] rules: - host: piefed.keyboardvagabond.com http: paths: - path: / pathType: Prefix backend: service: name: piefed-web port: number: 80