--- apiVersion: apps/v1 kind: Deployment metadata: name: execute-service namespace: customer1 labels: app: execute-service app.kubernetes.io/name: execute-service app.kubernetes.io/component: microservice spec: replicas: 2 selector: matchLabels: app: execute-service template: metadata: labels: app: execute-service app.kubernetes.io/name: execute-service app.kubernetes.io/component: microservice spec: automountServiceAccountToken: false securityContext: runAsNonRoot: true runAsUser: 1000 fsGroup: 1000 containers: - name: execute-service image: "trading-platform/execute-service:v${VERSION}" ports: - containerPort: 8000 protocol: TCP envFrom: - configMapRef: name: trading-platform-config resources: limits: cpu: "500m" memory: 512Mi requests: cpu: "250m" memory: 256Mi livenessProbe: httpGet: path: /health port: 8000 initialDelaySeconds: 15 periodSeconds: 15 timeoutSeconds: 5 failureThreshold: 3 readinessProbe: httpGet: path: /health port: 8000 initialDelaySeconds: 5 periodSeconds: 10 timeoutSeconds: 5 failureThreshold: 3 securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true volumeMounts: - name: tmp mountPath: /tmp volumes: - name: tmp emptyDir: {}