apiVersion: apps/v1 kind: Deployment metadata: name: vllm namespace: llm labels: app: vllm spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: vllm template: metadata: labels: app: vllm annotations: llm.local/compose-service: "vllm" spec: nodeName: prod102 enableServiceLinks: false hostAliases: - ip: 10.0.1.47 hostnames: ["host.docker.internal"] containers: - name: vllm image: docker.m.daocloud.io/vllm/vllm-openai:latest imagePullPolicy: IfNotPresent command: - "vllm" - "serve" args: - "/model" - "--trust-remote-code" - "--dtype" - "bfloat16" - "--tensor-parallel-size" - "1" - "--enable-auto-tool-choice" - "--tool-call-parser" - "qwen3_xml" - "--reasoning-parser" - "qwen3" - "--max-model-len" - "65536" - "--gpu-memory-utilization" - "0.70" - "--max-num-seqs" - "8" - "--served-model-name" - "qwen3.6-27b" - "--enable-prefix-caching" - "--host" - "0.0.0.0" - "--port" - "8000" envFrom: - secretRef: name: vllm-env ports: - containerPort: 8000 hostPort: 8000 protocol: TCP startupProbe: httpGet: path: /health port: 8000 periodSeconds: 10 failureThreshold: 36 livenessProbe: httpGet: path: /health port: 8000 initialDelaySeconds: 120 periodSeconds: 10 failureThreshold: 5 readinessProbe: httpGet: path: /health port: 8000 initialDelaySeconds: 60 periodSeconds: 5 failureThreshold: 3 volumeMounts: - name: vol0 mountPath: "/model" - name: dshm mountPath: "/dev/shm" volumes: - name: vol0 hostPath: path: "/models/Qwen3.6-27B" type: Directory - name: dshm emptyDir: medium: Memory sizeLimit: 8Gi --- apiVersion: v1 kind: Service metadata: name: vllm namespace: llm spec: selector: app: vllm ports: - name: p8000 port: 8000 targetPort: 8000 protocol: TCP