Files
whale-town-end/.env.example
angjustinl daaf5c3f22 Merge branch 'main' into zulip_dev
* main: (31 commits)
  docs:更新README中的测试说明
  chore:整理API测试脚本
  test:添加验证码冷却时间清除功能测试
  feat:集成验证码冷却时间自动清除机制
  feat:添加验证码冷却时间清除功能
  api:更新登录验证码接口Swagger注解
  docs:更新登录验证码邮件模板修复相关文档
  test:添加登录验证码邮件发送测试
  fix:修复登录验证码邮件模板错误
  feat: 邮箱冲突检测优化 v1.1.1
  docs: 更新API文档,反映HTTP状态码修复
  fix: 修复用户注册冲突错误的HTTP状态码问题
  chore: 升级版本到1.1.0
  feat(docs): 更新OpenAPI文档,添加验证码登录和完整接口定义
  fix(docs): 修正API文档中的错误码和验证码说明
  docs: 完善API文档,添加验证码登录功能说明
  fix:修复注册逻辑和HTTP状态码问题
  fix:修复API状态码和限流配置问题
  chore: 清理旧文件和更新项目配置
  refactor: 更新核心服务和应用配置
  ...
2025-12-25 23:27:24 +08:00

127 lines
3.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 环境配置模板
# 复制此文件为 .env 并根据需要修改配置
# ===========================================
# 测试模式配置(开发/测试环境推荐)
# ===========================================
# 使用以下配置可以在没有数据库和邮件服务器的情况下进行测试
# 1. 复制此文件为 .env
# 2. 保持数据库和邮件配置为注释状态
# 3. 运行 npm run dev 启动服务
# 4. 运行测试脚本:./test-api.ps1 (Windows) 或 ./test-api.sh (Linux/macOS)
# 应用配置
NODE_ENV=development
PORT=3000
LOG_LEVEL=debug
# ===========================================
# 管理员后台配置(开发环境推荐配置)
# ===========================================
# 管理员Token签名密钥至少16字符生产环境务必使用强随机值
ADMIN_TOKEN_SECRET=dev_admin_token_secret_change_me_32chars
# 管理员Token有效期默认8小时
ADMIN_TOKEN_TTL_SECONDS=28800
# 启动引导创建管理员账号(仅当 enabled=true 时生效)
ADMIN_BOOTSTRAP_ENABLED=false
# ADMIN_USERNAME=admin
# ADMIN_PASSWORD=Admin123456
# ADMIN_NICKNAME=管理员
# JWT 配置
JWT_SECRET=test_jwt_secret_key_for_development_only_32chars
JWT_EXPIRES_IN=7d
# Redis 配置(测试模式:使用文件存储)
USE_FILE_REDIS=true
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_DB=0
# ===========================================
# 生产环境配置(取消注释并填入真实数据)
# ===========================================
# 数据库配置(生产环境取消注释)
# DB_HOST=your_mysql_host
# DB_PORT=3306
# DB_USERNAME=your_db_username
# DB_PASSWORD=your_db_password
# DB_NAME=your_db_name
# Redis 配置(生产环境取消注释并设置 USE_FILE_REDIS=false
# USE_FILE_REDIS=false
# REDIS_HOST=your_redis_host
# REDIS_PORT=6379
# REDIS_PASSWORD=your_redis_password
# REDIS_DB=0
# 邮件服务配置(生产环境取消注释)
# EMAIL_HOST=smtp.gmail.com
# EMAIL_PORT=587
# EMAIL_SECURE=false
# EMAIL_USER=your_email@gmail.com
# EMAIL_PASS=your_app_password
# EMAIL_FROM="Whale Town Game" <noreply@whaletown.com>
# 生产环境设置(生产环境取消注释)
# NODE_ENV=production
# LOG_LEVEL=info
# ===========================================
# Zulip 集成配置
# ===========================================
# Zulip 服务器配置
ZULIP_SERVER_URL=https://zulip.xinghangee.icu/
ZULIP_BOT_EMAIL=cbot-bot@zulip.xinghangee.icu
ZULIP_BOT_API_KEY=your_bot_api_key
# Zulip API Key加密密钥生产环境必须配置至少32字符
# ZULIP_API_KEY_ENCRYPTION_KEY=your_32_character_encryption_key_here
# Zulip 错误处理配置
ZULIP_DEGRADED_MODE_ENABLED=false
ZULIP_AUTO_RECONNECT_ENABLED=true
ZULIP_MAX_RECONNECT_ATTEMPTS=5
ZULIP_RECONNECT_BASE_DELAY=5000
ZULIP_API_TIMEOUT=30000
ZULIP_MAX_RETRIES=3
# Zulip 连接限制配置
ZULIP_MAX_CONNECTIONS=100
ZULIP_SESSION_TIMEOUT=30
ZULIP_CLEANUP_INTERVAL=5
# Zulip 消息配置
ZULIP_MESSAGE_RATE_LIMIT=10
ZULIP_MESSAGE_MAX_LENGTH=10000
ZULIP_CONTENT_FILTER_ENABLED=true
# ZULIP_SENSITIVE_WORDS_PATH=config/zulip/sensitive-words.txt
# Zulip 允许的Stream列表逗号分隔空表示允许所有
# ZULIP_ALLOWED_STREAMS=General,Novice Village,Tavern
# WebSocket配置
# WEBSOCKET_PORT=3000
# WEBSOCKET_NAMESPACE=/game
# WEBSOCKET_PING_INTERVAL=25000
# WEBSOCKET_PING_TIMEOUT=5000
# ===========================================
# 监控配置
# ===========================================
# 健康检查间隔(毫秒)
MONITORING_HEALTH_CHECK_INTERVAL=60000
# 错误率阈值0-1
MONITORING_ERROR_RATE_THRESHOLD=0.1
# API响应时间阈值毫秒
MONITORING_RESPONSE_TIME_THRESHOLD=5000
# 内存使用阈值0-1
MONITORING_MEMORY_THRESHOLD=0.9