apiVersion: apps/v1 kind: Deployment metadata: name: data namespace: astrololo spec: replicas: 1 selector: { matchLabels: { app: data } } template: metadata: { labels: { app: data } } spec: imagePullSecrets: [{ name: gitea-registry }] containers: - name: data image: gitea.czernobog.pl/gitea/astrololo-data:9323803c ports: [{ containerPort: 8002 }] env: - name: DATA_PROVIDER value: "excel" - name: EXCEL_DIR value: "/app/data_files" # montowane z NFS (patrz volumes) — NIE z obrazu - name: CACHE_DIR value: "/app/.cache" - name: INDEXED_KEYS value: "name,id,symbol" # Token międzywarstwowy (LOG-32). Ta warstwa oddaje SUROWE wiersze baz — # najwrażliwszy punkt systemu. Bez tokenu dałoby się ją odpytać # bezpośrednio, z pominięciem i logiki, i logowania w UI. - name: INTERNAL_TOKEN valueFrom: secretKeyRef: { name: astrololo-auth, key: INTERNAL_TOKEN } volumeMounts: - name: cache mountPath: /app/.cache - name: excel mountPath: /app/data_files readOnly: true resources: requests: { cpu: "100m", memory: "256Mi" } limits: { cpu: "500m", memory: "512Mi" } volumes: - name: cache emptyDir: {} # cache ulotny; odbuduje się po restarcie - name: excel nfs: server: 192.168.1.34 path: /mnt/Tank1/astrololo --- apiVersion: v1 kind: Service metadata: name: data namespace: astrololo spec: selector: { app: data } ports: [{ port: 8002, targetPort: 8002 }]