Added Kubernetes deployment files (#2719)
This commit is contained in:
63
kubernetes-deployment/backend/backend-deployment.yaml
Normal file
63
kubernetes-deployment/backend/backend-deployment.yaml
Normal file
@@ -0,0 +1,63 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: skyvern-backend
|
||||
namespace: skyvern
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: skyvern-backend
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: skyvern-backend
|
||||
spec:
|
||||
containers:
|
||||
- name: skyvern-backend
|
||||
image: public.ecr.aws/skyvern/skyvern:latest
|
||||
ports:
|
||||
- containerPort: 8000
|
||||
- containerPort: 9222
|
||||
envFrom:
|
||||
- secretRef:
|
||||
name: skyvern-backend-env
|
||||
volumeMounts:
|
||||
- name: artifacts
|
||||
mountPath: /data/artifacts
|
||||
- name: videos
|
||||
mountPath: /data/videos
|
||||
- name: har
|
||||
mountPath: /data/har
|
||||
- name: log
|
||||
mountPath: /data/log
|
||||
- name: streamlit
|
||||
mountPath: /app/.streamlit
|
||||
readinessProbe:
|
||||
exec:
|
||||
command: ["test", "-f", "/app/.streamlit/secrets.toml"]
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 5
|
||||
volumes:
|
||||
- name: artifacts
|
||||
hostPath:
|
||||
path: /data/artifacts
|
||||
type: DirectoryOrCreate
|
||||
- name: videos
|
||||
hostPath:
|
||||
path: /data/videos
|
||||
type: DirectoryOrCreate
|
||||
- name: har
|
||||
hostPath:
|
||||
path: /data/har
|
||||
type: DirectoryOrCreate
|
||||
- name: log
|
||||
hostPath:
|
||||
path: /data/log
|
||||
type: DirectoryOrCreate
|
||||
- name: streamlit
|
||||
hostPath:
|
||||
path: /app/.streamlit
|
||||
type: DirectoryOrCreate
|
||||
44
kubernetes-deployment/backend/backend-secrets.yaml
Normal file
44
kubernetes-deployment/backend/backend-secrets.yaml
Normal file
@@ -0,0 +1,44 @@
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: skyvern-backend-env
|
||||
namespace: skyvern
|
||||
type: Opaque
|
||||
stringData:
|
||||
# Environment variables for the Skyvern backend
|
||||
# You can use the ones from the .env file in the root of skyvern
|
||||
ENV: local
|
||||
ENABLE_OPENAI: ""
|
||||
OPENAI_API_KEY: ""
|
||||
ENABLE_ANTHROPIC: "false"
|
||||
ANTHROPIC_API_KEY: ""
|
||||
ENABLE_AZURE: "false"
|
||||
AZURE_DEPLOYMENT: ""
|
||||
AZURE_API_KEY: ""
|
||||
AZURE_API_BASE: ""
|
||||
AZURE_API_VERSION: ""
|
||||
ENABLE_AZURE_GPT4O_MINI: "false"
|
||||
AZURE_GPT4O_MINI_DEPLOYMENT: ""
|
||||
AZURE_GPT4O_MINI_API_KEY: ""
|
||||
AZURE_GPT4O_MINI_API_BASE: ""
|
||||
AZURE_GPT4O_MINI_API_VERSION: ""
|
||||
ENABLE_GEMINI: "false"
|
||||
GEMINI_API_KEY: ""
|
||||
ENABLE_NOVITA: "false"
|
||||
NOVITA_API_KEY: ""
|
||||
LLM_KEY: OPENAI_GPT4_1
|
||||
SECONDARY_LLM_KEY: ""
|
||||
BROWSER_TYPE: chromium-headless
|
||||
MAX_SCRAPING_RETRIES: "0"
|
||||
VIDEO_PATH: ./videos
|
||||
BROWSER_ACTION_TIMEOUT_MS: "5000"
|
||||
MAX_STEPS_PER_RUN: "50"
|
||||
LOG_LEVEL: INFO
|
||||
LITELLM_LOG: CRITICAL
|
||||
DATABASE_STRING: postgresql+psycopg://skyvern:skyvern@postgres/skyvern
|
||||
PORT: "8000"
|
||||
ANALYTICS_ID: ""
|
||||
ENABLE_LOG_ARTIFACTS: "false"
|
||||
ENABLE_OPENAI_COMPATIBLE: "false"
|
||||
SKYVERN_BASE_URL: http://localhost:8000
|
||||
SKYVERN_API_KEY: ""
|
||||
16
kubernetes-deployment/backend/backend-service.yaml
Normal file
16
kubernetes-deployment/backend/backend-service.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: skyvern-backend
|
||||
namespace: skyvern
|
||||
spec:
|
||||
type: ClusterIP # Or LoadBalancer
|
||||
ports:
|
||||
- name: http
|
||||
port: 8000
|
||||
targetPort: 8000
|
||||
- name: cdp
|
||||
port: 9222
|
||||
targetPort: 9222
|
||||
selector:
|
||||
app: skyvern-backend
|
||||
Reference in New Issue
Block a user