Files
mcp-captcharesolver/deploy/k8s/deployment.yaml
T
2026-06-11 22:55:35 +01:00

56 lines
2.0 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: mcp-captcha-solver
namespace: agentgateway-system
labels:
app.kubernetes.io/name: mcp-captcha-solver
app.kubernetes.io/part-of: mcp-servers
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: mcp-captcha-solver
template:
metadata:
labels:
app.kubernetes.io/name: mcp-captcha-solver
app.kubernetes.io/part-of: mcp-servers
spec:
automountServiceAccountToken: false
securityContext:
runAsNonRoot: true
seccompProfile: { type: RuntimeDefault }
containers:
- name: mcp
image: ghcr.io/lukaszraczylo/mcp-captchasolver:latest
imagePullPolicy: IfNotPresent
ports:
- { name: http, containerPort: 8085 }
env:
- { name: CAPTCHA_TRANSPORT, value: "http" }
- { name: CAPTCHA_HTTP_ADDR, value: ":8085" }
- { name: CAPTCHA_HTTP_PATH, value: "/mcp" }
- { name: CAPTCHA_LLM_PROVIDER, value: "openai-compatible" }
- { name: CAPTCHA_LLM_BASE_URL, value: "http://agentgateway-proxy.agentgateway-system.svc.cluster.local/v1" }
- { name: CAPTCHA_LLM_MODEL, value: "minimax/MiniMax-M3" }
- { name: CAPTCHA_LLM_TIMEOUT, value: "120s" }
- { name: CAPTCHA_LLM_MAX_TOKENS, value: "2048" }
readinessProbe:
httpGet: { path: /healthz, port: http }
initialDelaySeconds: 2
periodSeconds: 5
livenessProbe:
httpGet: { path: /healthz, port: http }
initialDelaySeconds: 15
periodSeconds: 15
resources:
requests: { cpu: 50m, memory: 64Mi }
limits: { cpu: 1, memory: 512Mi }
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
runAsNonRoot: true
capabilities: { drop: [ALL] }
seccompProfile: { type: RuntimeDefault }