apiVersion: v1 kind: Service metadata: name: nextcloud-server namespace: nextcloud labels: app: nextcloud spec: selector: pod-label: nextcloud-server-pod type: NodePort ports: - port: 80 nodePort: 30580 targetPort: nextcloud --- apiVersion: apps/v1 kind: Deployment metadata: name: nextcloud-server namespace: nextcloud labels: app: nextcloud spec: replicas: 1 selector: matchLabels: pod-label: nextcloud-server-pod template: metadata: labels: pod-label: nextcloud-server-pod spec: containers: - name: nextcloud image: nextcloud:34.0.4-apache volumeMounts: - name: server-storage mountPath: /var/www/html subPath: server-data ports: - containerPort: 80 name: nextcloud env: - name: NEXTCLOUD_TRUSTED_DOMAINS value: "nextcloud.reymota.es" # Permite a Nextcloud confiar en el proxy Nginx externo - name: TRUSTED_PROXIES value: "10.34.0.0/24 10.96.0.0/12 192.168.1.0/24" # Pod CIDR Calico, Service CIDR y red de nodos # Fuerza a Nextcloud a generar todos los enlaces internos usando HTTPS - name: OVERWRITEPROTOCOL value: "https" # Define el host externo que ve el usuario final - name: OVERWRITEHOST value: "nextcloud.reymota.es" # Credenciales de Administrador para Nextcloud - name: NEXTCLOUD_ADMIN_USER valueFrom: secretKeyRef: name: nextcloud-creds key: admin-user - name: NEXTCLOUD_ADMIN_PASSWORD valueFrom: secretKeyRef: name: nextcloud-creds key: admin-pass - name: POSTGRES_HOST value: k8s-postgres-cluster-rw.k8s-pg-cluster.svc.cluster.local - name: POSTGRES_DB value: nextcloud - name: POSTGRES_USER valueFrom: secretKeyRef: name: nextcloud-creds key: db-user - name: POSTGRES_PASSWORD valueFrom: secretKeyRef: name: nextcloud-creds key: db-pass volumes: - name: server-storage persistentVolumeClaim: claimName: dbnc-pv-claim