Cargando...
Construye manifiestos K8s para Deployment, Service, ConfigMap, Secret, Ingress y más
apiVersion: apps/v1
kind: Deployment
metadata:
name: frontend-web
namespace: production
labels:
app: frontend-web
spec:
replicas: 3
selector:
matchLabels:
app: frontend-web
template:
metadata:
labels:
app: frontend-web
spec:
containers:
- name: frontend-web
image: ghcr.io/org/frontend-app:v1.2.0
ports:
- containerPort: 3000
resources:
requests:
cpu: "100m"
memory: "128Mi"
limits:
cpu: "500m"
memory: "512Mi"
livenessProbe:
httpGet:
path: /healthz
port: 3000
initialDelaySeconds: 15
periodSeconds: 20
readinessProbe:
httpGet:
path: /ready
port: 3000
initialDelaySeconds: 5
periodSeconds: 10
---
apiVersion: v1
kind: Service
metadata:
name: frontend-web-svc
namespace: production
labels:
app: frontend-web
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 3000
protocol: TCP
name: http
selector:
app: frontend-web
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: frontend-web-ingress
namespace: production
annotations:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: letsencrypt-prod
spec:
tls:
- hosts:
- app.example.com
secretName: frontend-web-tls-secret
rules:
- host: app.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: frontend-web-svc
port:
number: 80