agentic-os/agents/k8s/trip-service-deployment.yaml

112 lines
2.7 KiB
YAML

---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: trip-service-pvc
namespace: ai-agents
spec:
accessModes: [ReadWriteOnce]
storageClassName: longhorn
resources:
requests:
storage: 256Mi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: trip-service
namespace: ai-agents
labels:
app: trip-service
spec:
replicas: 1
selector:
matchLabels:
app: trip-service
template:
metadata:
labels:
app: trip-service
spec:
initContainers:
- name: git-clone
image: alpine/git
command:
- git
- clone
- http://192.168.8.248:3000/deepkoluguri/agentic-os.git
- /app
volumeMounts:
- name: app-volume
mountPath: /app
containers:
- name: trip-service
image: node:20-alpine
workingDir: /app/trip-service
command:
- sh
- -c
- npm install --omit=dev && node server.js
ports:
- containerPort: 6002
env:
- name: DATA_FILE
value: /data/trips.json
- name: PORT
value: "6002"
- name: GATEWAY_URL
value: http://whatsapp-gateway.ai-agents.svc.cluster.local:5001/send-message
- name: OLLAMA_URL
value: http://ollama.ai-agents.svc.cluster.local:11434/api/generate
- name: PERSONAL_NUM
valueFrom:
configMapKeyRef:
name: whatsapp-config
key: personal-number
- name: GROUP_URL
valueFrom:
configMapKeyRef:
name: whatsapp-config
key: trip-group-url
- name: ANTHROPIC_API_KEY
valueFrom:
secretKeyRef:
name: trip-service-anthropic
key: api_key
volumeMounts:
- name: app-volume
mountPath: /app
- name: data-volume
mountPath: /data
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 200m
memory: 256Mi
readinessProbe:
httpGet:
path: /health
port: 6002
initialDelaySeconds: 30
periodSeconds: 15
volumes:
- name: app-volume
emptyDir: {}
- name: data-volume
persistentVolumeClaim:
claimName: trip-service-pvc
---
apiVersion: v1
kind: Service
metadata:
name: trip-service
namespace: ai-agents
spec:
selector:
app: trip-service
ports:
- port: 6002
targetPort: 6002