feat: Add k8s deployment manifests for staging environment (Phase 10-07, Task 2)
- PostgreSQL StatefulSet with ConfigMap, Secret, and Service - Backend Deployment with health checks and resource limits - Frontend Deployment with health checks and resource limits - Ingress configuration for traefik/nginx ingress controllers - Comprehensive deployment report documenting staging setup - All services running and healthy with 0 restarts - Database schema migration pending Staging cluster status: - gravl-backend: 1/1 Running ✅ - gravl-frontend: 1/1 Running ✅ - gravl-db: 1/1 Running ✅ - Ingress: traefik configured and responding ✅
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
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
|
||||
Reference in New Issue
Block a user