apiVersion: apps/v1 kind: Deployment metadata: {name: gateway, namespace: enkly, labels: {app: gateway}} spec: replicas: 2 selector: {matchLabels: {app: gateway}} template: metadata: {labels: {app: gateway}} spec: imagePullSecrets: [{name: enkly-registry}] containers: - name: gateway image: registry.enkly.org/enkly/gateway:latest ports: [{name: http, containerPort: 8080}] envFrom: [{configMapRef: {name: enkly-config}}] env: - {name: ENKLY_IAM_GRPC_ADDR, value: "iam:9001"} - {name: ENKLY_BILLING_GRPC_ADDR, value: "billing:9002"} - {name: ENKLY_CONVERSATION_GRPC_ADDR, value: "conversation:9003"} - {name: ENKLY_WORKSPACE_GRPC_ADDR, value: "workspace:9004"} - {name: ENKLY_KNOWLEDGE_GRPC_ADDR, value: "knowledge:9005"} - {name: ENKLY_AGENT_GRPC_ADDR, value: "agent:9006"} - name: STRIPE_PUBLISH_KEY valueFrom: {secretKeyRef: {name: enkly-secrets, key: STRIPE_PUBLISH_KEY}} resources: requests: {cpu: 100m, memory: 96Mi} limits: {cpu: 500m, memory: 256Mi} readinessProbe: {httpGet: {path: /healthz, port: http}, initialDelaySeconds: 5, periodSeconds: 10, failureThreshold: 10} livenessProbe: {httpGet: {path: /healthz, port: http}, initialDelaySeconds: 15, periodSeconds: 20, failureThreshold: 6} --- apiVersion: v1 kind: Service metadata: {name: gateway, namespace: enkly, labels: {app: gateway}} spec: selector: {app: gateway} ports: [{name: http, port: 8080, targetPort: http}]