Files
kubernetes/apolo/deployments/deploy-portal.yaml
2025-08-17 10:15:19 +02:00

67 lines
1.8 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: apolo-portal
namespace: apolo
labels:
app.kubernetes.io/name: apolo-portal
app.kubernetes.io/part-of: apolo
app.kubernetes.io/component: portal
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: apolo-portal
template:
metadata:
labels:
app.kubernetes.io/name: apolo-portal
app.kubernetes.io/part-of: apolo
app.kubernetes.io/component: portal
spec:
imagePullSecrets:
- name: harbor-cred
containers:
# Contenedor de la app (como venías)
- name: portal
image: harbor.c2et.com/xrf-ssl/xrf-portal-https:6.0
imagePullPolicy: IfNotPresent
ports:
- name: app
containerPort: 3000
readinessProbe:
httpGet: { path: /, port: 3000 }
initialDelaySeconds: 5
periodSeconds: 10
livenessProbe:
httpGet: { path: /, port: 3000 }
initialDelaySeconds: 20
periodSeconds: 20
# Sidecar NGINX con sub_filter
- name: nginx-proxy
image: nginx:latest
ports:
- name: http
containerPort: 8080
volumeMounts:
- name: proxy-conf
mountPath: /etc/nginx/conf.d/default.conf
subPath: default.conf
readinessProbe:
httpGet: { path: /, port: 8080 }
initialDelaySeconds: 5
periodSeconds: 10
livenessProbe:
httpGet: { path: /, port: 8080 }
initialDelaySeconds: 20
periodSeconds: 20
volumes:
- name: proxy-conf
configMap:
name: apolo-portal-proxy
items:
- key: default.conf
path: default.conf