apiVersion: apps/v1 kind: Deployment metadata: name: xlog namespace: crossbell spec: progressDeadlineSeconds: 600 replicas: 5 revisionHistoryLimit: 5 selector: matchLabels: app: xlog strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: labels: app: xlog annotations: prometheus.io/path: /metrics prometheus.io/port: "8080" prometheus.io/scrape: "true" spec: enableServiceLinks: false nodeSelector: rss3.io/usage: csb-others tolerations: - key: "rss3.io/usage" operator: "Equal" value: "csb-others" effect: "NoSchedule" initContainers: - image: $IMAGE_TAG_RELEASE envFrom: - secretRef: name: xlog imagePullPolicy: Always name: xlog-init command: ["/bin/sh", "-c"] args: ["npm install -g prisma; npm run prisma:migrate:deploy"] containers: - image: $IMAGE_TAG_RELEASE imagePullPolicy: Always name: xlog envFrom: - secretRef: name: xlog ports: - containerPort: 3000 protocol: TCP resources: requests: memory: "1000Mi" cpu: "150m" limits: memory: "2000Mi" cpu: "1500m" terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - name: xlog-image mountPath: /app/.next/cache/images readinessProbe: tcpSocket: port: 3000 initialDelaySeconds: 40 periodSeconds: 10 livenessProbe: tcpSocket: port: 3000 initialDelaySeconds: 40 periodSeconds: 20 - name: caddy image: kindjeff/caddy-tlsredis-docker imagePullPolicy: Always command: ["caddy", "run", "-config", "/app/Caddyfile"] envFrom: - secretRef: name: xlog-caddy ports: - containerPort: 80 name: http - containerPort: 443 name: https volumeMounts: - name: caddyfile mountPath: /app - name: caddy-validator image: python command: ["/bin/sh", "-c"] args: ["pip install flask requests; flask --app=app run"] ports: - containerPort: 5000 name: http volumeMounts: - name: validator mountPath: /app.py subPath: app.py dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: {} terminationGracePeriodSeconds: 30 volumes: - name: caddyfile configMap: name: xlog-caddy - name: validator configMap: name: xlog-caddy-validator - name: xlog-image persistentVolumeClaim: claimName: xlog-image # OSS PVC created manually in the ACK console