Skip to content

Commit

Permalink
feat(k8s): Update Kubernetes configurations with proper port and CORS…
Browse files Browse the repository at this point in the history
… settings
  • Loading branch information
openhands-agent committed Feb 25, 2025
1 parent 6d65ed0 commit c807cea
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 95 deletions.
74 changes: 0 additions & 74 deletions k8s/README.md

This file was deleted.

16 changes: 11 additions & 5 deletions k8s/backend-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ metadata:
app: openhands
component: backend
spec:
replicas: 1
replicas: 2 # One for each work environment
selector:
matchLabels:
app: openhands
Expand All @@ -16,20 +16,26 @@ spec:
labels:
app: openhands
component: backend
annotations:
openhands.dev/port: "12000" # Default to work-1 port
spec:
containers:
- name: backend
image: ghcr.io/all-hands-ai/openhands:main
command: ["poetry", "run", "uvicorn", "openhands.server.listen:app", "--host", "0.0.0.0", "--port", "12000"]
command: ["poetry", "run", "uvicorn", "openhands.server.listen:app", "--host", "0.0.0.0", "--port", "$(PORT)"]
workingDir: /app
ports:
- containerPort: 12000
name: work1-port
- containerPort: 12001
name: work2-port
env:
- name: HOST
value: "0.0.0.0"
- name: PORT
value: "12000" # Will be 12000 for work-1 and 12001 for work-2
valueFrom:
fieldRef:
fieldPath: metadata.annotations['openhands.dev/port']
resources:
requests:
memory: "512Mi"
Expand All @@ -49,11 +55,11 @@ spec:
type: ClusterIP
ports:
- port: 12000
targetPort: 12000
targetPort: work1-port
protocol: TCP
name: http-work1
- port: 12001
targetPort: 12001
targetPort: work2-port
protocol: TCP
name: http-work2
selector:
Expand Down
26 changes: 15 additions & 11 deletions k8s/frontend-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ metadata:
app: openhands
component: frontend
spec:
replicas: 1
replicas: 2 # One for each work environment
selector:
matchLabels:
app: openhands
Expand All @@ -16,26 +16,30 @@ spec:
labels:
app: openhands
component: frontend
annotations:
openhands.dev/port: "12000" # Default to work-1 port
spec:
containers:
- name: frontend
image: ghcr.io/all-hands-ai/openhands:main
command: ["npm", "run", "dev", "--", "--port", "12000", "--host", "0.0.0.0"]
command: ["npm", "run", "dev", "--", "--port", "$(PORT)", "--host", "0.0.0.0"]
workingDir: /app/frontend
ports:
- containerPort: 12000
name: work1-port
- containerPort: 12001
name: work2-port
env:
- name: VITE_BACKEND_HOST
- name: PORT
valueFrom:
fieldRef:
fieldPath: metadata.namespace
fieldPath: metadata.annotations['openhands.dev/port']
- name: VITE_BACKEND_HOST
value: "openhands-backend-service"
- name: VITE_BACKEND_PORT
value: "12000" # Will be 12000 for work-1 and 12001 for work-2
- name: VITE_FRONTEND_PORT
value: "12000" # Will be 12000 for work-1 and 12001 for work-2
- name: HOST
value: "0.0.0.0"
valueFrom:
fieldRef:
fieldPath: metadata.annotations['openhands.dev/port']
resources:
requests:
memory: "256Mi"
Expand All @@ -55,11 +59,11 @@ spec:
type: ClusterIP
ports:
- port: 12000
targetPort: 12000
targetPort: work1-port
protocol: TCP
name: http-work1
- port: 12001
targetPort: 12001
targetPort: work2-port
protocol: TCP
name: http-work2
selector:
Expand Down
12 changes: 7 additions & 5 deletions k8s/ingress.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,25 @@ kind: Ingress
metadata:
name: openhands-ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
nginx.ingress.kubernetes.io/rewrite-target: /$1
nginx.ingress.kubernetes.io/cors-allow-origin: "*"
nginx.ingress.kubernetes.io/cors-allow-methods: "GET, PUT, POST, DELETE, PATCH, OPTIONS"
nginx.ingress.kubernetes.io/cors-allow-headers: "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization"
nginx.ingress.kubernetes.io/enable-cors: "true"
nginx.ingress.kubernetes.io/use-regex: "true"
spec:
rules:
- host: work-1-abdcoxuzwicybucg.prod-runtime.all-hands.dev
http:
paths:
- path: /api
- path: /api/(.*)
pathType: Prefix
backend:
service:
name: openhands-backend-service
port:
number: 12000
- path: /
- path: /(.*)
pathType: Prefix
backend:
service:
Expand All @@ -29,14 +31,14 @@ spec:
- host: work-2-abdcoxuzwicybucg.prod-runtime.all-hands.dev
http:
paths:
- path: /api
- path: /api/(.*)
pathType: Prefix
backend:
service:
name: openhands-backend-service
port:
number: 12001
- path: /
- path: /(.*)
pathType: Prefix
backend:
service:
Expand Down

0 comments on commit c807cea

Please sign in to comment.