env.example 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. # ========================================
  2. # 多平台媒体管理系统 - 服务端配置
  3. # ========================================
  4. # 复制此文件为 .env 并填入实际配置值
  5. # cp env.example .env (或 copy env.example .env)
  6. # ----------------------------------------
  7. # 基础配置
  8. # ----------------------------------------
  9. # 运行环境: development | production | test
  10. NODE_ENV=development
  11. # 服务端口
  12. PORT=3000
  13. # ----------------------------------------
  14. # 数据库配置 (MySQL)
  15. # ----------------------------------------
  16. # 数据库主机地址
  17. DB_HOST=localhost
  18. # 数据库端口
  19. DB_PORT=3306
  20. # 数据库用户名
  21. DB_USERNAME=root
  22. # 数据库密码
  23. DB_PASSWORD=your_mysql_password
  24. # 数据库名称
  25. DB_DATABASE=media_manager
  26. # ----------------------------------------
  27. # Redis 配置 (可选,用于缓存和任务队列)
  28. # ----------------------------------------
  29. # Redis 主机地址
  30. REDIS_HOST=localhost
  31. # Redis 端口
  32. REDIS_PORT=6379
  33. # Redis 密码 (无密码留空)
  34. REDIS_PASSWORD=
  35. # Redis 数据库编号 (0-15)
  36. REDIS_DB=0
  37. # ----------------------------------------
  38. # 任务队列配置
  39. # ----------------------------------------
  40. # 启用 Redis 任务队列 (true/false)
  41. # 启用后任务将持久化到 Redis,支持分布式和断点续传
  42. # 不启用则使用内存队列(重启后任务丢失)
  43. USE_REDIS_QUEUE=false
  44. # ----------------------------------------
  45. # JWT 认证配置
  46. # ----------------------------------------
  47. # JWT 密钥 (生产环境请使用强随机字符串)
  48. JWT_SECRET=your-super-secret-key-change-in-production
  49. # Access Token 过期时间
  50. JWT_ACCESS_EXPIRES_IN=15m
  51. # Refresh Token 过期时间
  52. JWT_REFRESH_EXPIRES_IN=7d
  53. # ----------------------------------------
  54. # CORS 跨域配置
  55. # ----------------------------------------
  56. # 允许的来源 (多个用逗号分隔)
  57. CORS_ORIGIN=http://localhost:5173
  58. # ----------------------------------------
  59. # 文件上传配置
  60. # ----------------------------------------
  61. # 上传文件存储路径 (相对于 server 目录)
  62. UPLOAD_PATH=./uploads
  63. # 最大视频文件大小 (MB)
  64. MAX_VIDEO_SIZE=4096
  65. # 最大图片文件大小 (MB)
  66. MAX_IMAGE_SIZE=10
  67. # ----------------------------------------
  68. # 加密配置
  69. # ----------------------------------------
  70. # 数据加密密钥 (必须是 32 个字符)
  71. ENCRYPTION_KEY=your-encryption-key-32-chars-long!
  72. # ----------------------------------------
  73. # AI 配置 - 阿里云百炼千问大模型 (可选,用于智能功能)
  74. # ----------------------------------------
  75. # 阿里云百炼 API Key (以 sk- 开头)
  76. # 获取地址: https://bailian.console.aliyun.com/
  77. DASHSCOPE_API_KEY=
  78. # API Base URL (可选,默认为北京区域)
  79. # 北京: https://dashscope.aliyuncs.com/compatible-mode/v1
  80. # 新加坡: https://dashscope-intl.aliyuncs.com/compatible-mode/v1
  81. # 弗吉尼亚: https://dashscope-us.aliyuncs.com/compatible-mode/v1
  82. DASHSCOPE_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
  83. # 默认对话模型 (可选)
  84. # 可选值: qwen-plus, qwen-max, qwen-turbo, qwen3-235b-a22b 等
  85. AI_DEFAULT_MODEL=qwen-plus
  86. # 对话模型 - 用于一般对话
  87. AI_CHAT_MODEL=qwen-plus
  88. # 快速模型 - 用于简单任务,响应更快
  89. AI_FAST_MODEL=qwen-turbo
  90. # 推理模型 - 用于复杂逻辑推理
  91. AI_REASONING_MODEL=qwq-plus
  92. # 视觉理解模型 - 用于图像分析
  93. AI_VISION_MODEL=qwen-vl-plus
  94. # 代码模型 - 用于代码生成和分析
  95. AI_CODER_MODEL=qwen-coder-plus
  96. # 嵌入模型 - 用于文本向量化
  97. AI_EMBEDDING_MODEL=text-embedding-v3
  98. # 请求超时时间 (毫秒)
  99. AI_TIMEOUT=60000
  100. # 最大重试次数
  101. AI_MAX_RETRIES=3
  102. # 兼容 OpenAI 配置 (如果设置了 DASHSCOPE_API_KEY,以下配置将被忽略)
  103. OPENAI_API_KEY=
  104. OPENAI_BASE_URL=https://api.openai.com/v1
  105. # ========================================
  106. # 示例配置值说明
  107. # ========================================
  108. #
  109. # JWT_SECRET 生成方法:
  110. # node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
  111. #
  112. # ENCRYPTION_KEY 生成方法:
  113. # node -e "console.log(require('crypto').randomBytes(16).toString('hex'))"
  114. #
  115. # 生产环境建议:
  116. # - 使用强密码
  117. # - 启用 HTTPS
  118. # - 配置防火墙规则
  119. # - 定期备份数据库
  120. #