apiVersion: apps/v1 kind: Deployment metadata: name: celery-worker labels: app: celery-worker spec: replicas: 1 selector: matchLabels: app: celery-worker template: metadata: labels: app: celery-worker spec: imagePullSecrets: - name: swr-secret containers: - name: celery-worker image: ${CI_REGISTRY_IMAGE}/video-backend:latest imagePullPolicy: Always command: ["celery", "-A", "config", "worker", "--loglevel=info", "--concurrency=4"] env: - name: USE_MYSQL value: "true" - name: DJANGO_DEBUG value: "False" - name: DJANGO_ALLOWED_HOSTS value: "*" - name: DJANGO_SECRET_KEY valueFrom: secretKeyRef: name: video-backend-secrets key: DJANGO_SECRET_KEY # Redis - name: REDIS_URL value: "redis://redis-service:6379/0" # Database (Aliyun RDS) - name: DB_HOST valueFrom: secretKeyRef: name: video-backend-secrets key: DB_HOST - name: DB_NAME value: "video_auto" - name: DB_USER valueFrom: secretKeyRef: name: video-backend-secrets key: DB_USER - name: DB_PASSWORD valueFrom: secretKeyRef: name: video-backend-secrets key: DB_PASSWORD - name: DB_PORT value: "3306" # TOS (from Secret) - name: TOS_ACCESS_KEY valueFrom: secretKeyRef: name: video-backend-secrets key: TOS_ACCESS_KEY - name: TOS_SECRET_KEY valueFrom: secretKeyRef: name: video-backend-secrets key: TOS_SECRET_KEY - name: TOS_BUCKET value: "airdrama-media" - name: TOS_ENDPOINT value: "https://tos-cn-beijing.volces.com" - name: TOS_REGION value: "cn-beijing" - name: TOS_CDN_DOMAIN value: "https://airdrama-media.tos-cn-beijing.volces.com" # Seedance API (from Secret) - name: ARK_API_KEY valueFrom: secretKeyRef: name: video-backend-secrets key: ARK_API_KEY resources: requests: memory: "128Mi" cpu: "100m" limits: memory: "512Mi" cpu: "500m"