.env.example 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. # ============================================
  2. # AI-CS 统一配置模板(唯一真源)
  3. # 使用方法:
  4. # 1) 复制为项目根目录 .env
  5. # 2) 按注释填写必填项
  6. # 3) Docker 与本地启动都读取这同一份配置
  7. # ============================================
  8. # =========================
  9. # 运行画像(建议配置)
  10. # =========================
  11. # 可选:docker / local
  12. # - docker:DB_HOST/MILVUS_HOST 通常填写服务名(mysql、milvus-standalone)
  13. # - local:DB_HOST/MILVUS_HOST 通常填写 localhost 或远程地址
  14. APP_PROFILE=docker
  15. # =========================
  16. # 服务监听(必填)
  17. # =========================
  18. SERVER_HOST=0.0.0.0
  19. SERVER_PORT=8080
  20. # 建议:生产 release,开发 debug
  21. GIN_MODE=release
  22. # =========================
  23. # 结构化日志(日志中心 / system_logs 表)
  24. # =========================
  25. # 仅将「不低于该级别」的日志写入数据库,减轻成功类 info 的写入量。
  26. # 可选:debug | info(默认)| warn | error | none(关闭全部落库,日志中心无新记录)
  27. # 若在「日志中心」保存了落库级别,会写入 app_settings 表并覆盖此处,直至在页面点「恢复环境变量」
  28. SYSTEM_LOG_MIN_LEVEL=info
  29. # =========================
  30. # 数据库(必填)
  31. # =========================
  32. DB_HOST=mysql
  33. DB_PORT=3306
  34. DB_USER=ai_cs_user
  35. DB_PASSWORD=please_change_me
  36. DB_NAME=ai_cs
  37. # MySQL 容器 root 密码(Docker 部署必填)
  38. MYSQL_ROOT_PASSWORD=please_change_root_password
  39. # MySQL 对外端口(非必须)
  40. MYSQL_PORT=3306
  41. # =========================
  42. # 管理员与安全(必填)
  43. # =========================
  44. ADMIN_USERNAME=admin
  45. ADMIN_PASSWORD=please_change_admin_password
  46. # 64 位十六进制密钥(必填)
  47. # 生成示例:openssl rand -hex 32
  48. ENCRYPTION_KEY=please_generate_64_hex_chars
  49. # =========================
  50. # Redis(按需配置,多实例推荐)
  51. # 说明:
  52. # - 单实例可留空
  53. # - 多实例可配置 REDIS_URL,或使用 REDIS_ADDR + REDIS_PASSWORD + REDIS_DB
  54. # =========================
  55. REDIS_URL=
  56. REDIS_ADDR=
  57. REDIS_PASSWORD=
  58. REDIS_DB=0
  59. # WebSocket 分布式事件频道(一般无需修改)
  60. REDIS_WS_CHANNEL=ai_cs:ws_events
  61. # =========================
  62. # 会话维护(Demo/生产可选)
  63. # =========================
  64. # 自动关闭超过 N 天未更新的 open 访客会话;设为 0 禁用
  65. AUTO_CLOSE_CONVERSATION_DAYS=7
  66. # =========================
  67. # 离线邮件通知(按需配置)
  68. # 访客离线且已留邮箱时,客服人工消息延迟推送邮件;也可在「设置 → 离线邮件通知」页面配置
  69. # =========================
  70. # 是否启用(true/false/1/0)
  71. OFFLINE_EMAIL_ENABLED=false
  72. # 客服发消息后等待秒数再发邮件(默认 60);访客在此期间上线则取消
  73. OFFLINE_EMAIL_DELAY_SECONDS=60
  74. # 云厂商 SMTP(如阿里云邮件推送:smtpdm.aliyun.com:465)
  75. SMTP_HOST=
  76. SMTP_PORT=465
  77. SMTP_USER=
  78. SMTP_PASSWORD=
  79. SMTP_FROM_EMAIL=
  80. SMTP_FROM_NAME=
  81. # =========================
  82. # 访客 IP 地理位置(ip2region 离线库,可选)
  83. # =========================
  84. # true 时关闭解析;Docker 镜像内已内置 v4+v6 数据文件
  85. IP2REGION_DISABLED=false
  86. # 自定义 xdb 路径(本地开发:sh scripts/download-ip2region-xdb.sh)
  87. # IP2REGION_V4_XDB=backend/data/ip2region_v4.xdb
  88. # IP2REGION_V6_XDB=backend/data/ip2region_v6.xdb
  89. # =========================
  90. # 端口映射(非必须)
  91. # =========================
  92. # 后端映射到宿主机端口(host:container = BACKEND_PORT:SERVER_PORT)
  93. BACKEND_PORT=18080
  94. # 前端映射到宿主机端口
  95. FRONTEND_PORT=3000
  96. # =========================
  97. # 向量库 Milvus(按需配置)
  98. # 仅在使用知识库/RAG时需要
  99. # =========================
  100. MILVUS_HOST=milvus-standalone
  101. MILVUS_PORT=19530
  102. MILVUS_USERNAME=
  103. MILVUS_PASSWORD=
  104. # true 表示禁用向量库(不连接 Milvus)
  105. MILVUS_DISABLED=false
  106. # 与 MILVUS_DISABLED 含义相同,保留为兼容开关
  107. VECTOR_STORE_DISABLED=false
  108. # true 表示强依赖 Milvus(连接失败则启动失败)
  109. MILVUS_REQUIRED=false
  110. # RAG 向量检索最低相似度(0~1,分段场景默认 0.22;过高会导致「搜不到」)
  111. # RAG_MIN_SCORE=0.22
  112. # =========================
  113. # 联网搜索(按需配置)
  114. # 使用联网搜索功能时至少配置一种
  115. # =========================
  116. # 方式一:Serper MCP 服务地址
  117. SERPER_MCP_URL=
  118. # 方式二:Serper API Key
  119. SERPER_API_KEY=
  120. # =========================
  121. # 前端公开变量(按需配置)
  122. # 说明:NEXT_PUBLIC_* 会暴露到浏览器端
  123. # =========================
  124. # 非必填:站点对外的绝对地址(https://你的域名),用于 SEO(canonical、OG、sitemap)。未填时前端默认使用演示站域名。
  125. NEXT_PUBLIC_SITE_URL=
  126. NEXT_PUBLIC_API_BASE_URL=http://localhost:18080
  127. NEXT_PUBLIC_BACKEND_HOST=localhost
  128. NEXT_PUBLIC_BACKEND_PORT=8080
  129. NEXT_PUBLIC_MATOMO_CONTAINER_URL=
  130. # =========================
  131. # 预构建镜像(docker-compose.prod.yml 必填)
  132. # =========================
  133. BACKEND_IMAGE=537yaha/ai-cs-backend:latest
  134. FRONTEND_IMAGE=537yaha/ai-cs-frontend:latest