apiVersion: apps/v1 kind: Deployment metadata: name: bytedesk namespace: bytedesk labels: app: bytedesk spec: replicas: 1 selector: matchLabels: app: bytedesk template: metadata: labels: app: bytedesk spec: containers: - name: bytedesk image: registry.cn-hangzhou.aliyuncs.com/bytedesk/bytedesk:latest ports: - containerPort: 9003 name: http - containerPort: 9885 name: websocket envFrom: - configMapRef: name: bytedesk-config env: # 敏感信息配置(从 Secret 获取) - name: BYTEDESK_JWT_SECRET_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: jwt-secret-key - name: SPRING_DATASOURCE_USERNAME valueFrom: secretKeyRef: name: bytedesk-secrets key: mysql-username - name: SPRING_DATASOURCE_PASSWORD valueFrom: secretKeyRef: name: bytedesk-secrets key: mysql-root-password - name: SPRING_DATA_REDIS_PASSWORD valueFrom: secretKeyRef: name: bytedesk-secrets key: redis-password - name: SPRING_ELASTICSEARCH_USERNAME valueFrom: secretKeyRef: name: bytedesk-secrets key: elasticsearch-username - name: SPRING_ELASTICSEARCH_PASSWORD valueFrom: secretKeyRef: name: bytedesk-secrets key: elasticsearch-password - name: SPRING_ARTEMIS_USER valueFrom: secretKeyRef: name: bytedesk-secrets key: artemis-username - name: SPRING_ARTEMIS_PASSWORD valueFrom: secretKeyRef: name: bytedesk-secrets key: artemis-password - name: BYTEDESK_MINIO_ACCESS_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: minio-root-user - name: BYTEDESK_MINIO_SECRET_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: minio-root-password # AI API Keys(从 Secret 获取) - name: SPRING_AI_ZHIPUAI_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: zhipuai-api-key - name: SPRING_AI_DEEPSEEK_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: deepseek-api-key - name: SPRING_AI_OPENAI_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: openai-api-key - name: SPRING_AI_DASHSCOPE_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: dashscope-api-key - name: SPRING_AI_SILICONFLOW_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: siliconflow-api-key - name: SPRING_AI_GITEE_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: gitee-api-key - name: SPRING_AI_TENCENT_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: tencent-api-key - name: SPRING_AI_BAIDU_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: baidu-api-key - name: SPRING_AI_VOLCENGINE_API_KEY valueFrom: secretKeyRef: name: bytedesk-secrets key: volcengine-api-key volumeMounts: - name: uploads-data mountPath: /app/uploads resources: requests: memory: "2Gi" cpu: "1000m" limits: memory: "4Gi" cpu: "2000m" livenessProbe: httpGet: path: /actuator/health port: 9003 initialDelaySeconds: 60 periodSeconds: 30 readinessProbe: httpGet: path: /actuator/health port: 9003 initialDelaySeconds: 30 periodSeconds: 10 volumes: - name: uploads-data persistentVolumeClaim: claimName: uploads-pvc