# 复制为 .env.docker 后修改 # cp .env.docker.example .env.docker # PostgreSQL(生产务必修改) POSTGRES_PASSWORD=thebet365 # 发布镜像版本;部署脚本使用 --tag 时会写回服务器上的 .env.docker IMAGE_TAG=latest # JWT(生产务必修改) JWT_SECRET=change-me-in-production-use-long-random-string JWT_PLAYER_EXPIRES=24h JWT_ADMIN_EXPIRES=2h JWT_AGENT_EXPIRES=8h # 首次部署如需写入默认数据,可临时改为 true;灌完后改回 false 并重启 api SEED_DATABASE=false # 迁移由 deploy-first/deploy-update 脚本执行;仅应急兼容时改为 true RUN_MIGRATIONS_ON_START=false # 可选:覆盖 admin 初始密码(仅 seed/重置时生效) # ADMIN_INITIAL_PASSWORD=YourStrongPasswordHere # 对外端口(宝塔/Nginx 反代推荐只暴露前端,API 经反向代理访问) BIND_ADDR=127.0.0.1 PLAYER_PORT=8082 ADMIN_PORT=8081 # 备份保留天数;留空表示不自动清理 BACKUP_RETENTION_DAYS= # API 安全开关 # CORS_ORIGINS=https://player.example.com,https://admin.example.com ENABLE_SWAGGER=false # 创蓝短信(Chuanglan,仅 API 使用) CHUANGLAN_ACCOUNT=your_account CHUANGLAN_PASSWORD=your_password CHUANGLAN_ENDPOINT=https://sgap.253.com/send/sms CHUANGLAN_CONNECT_TIMEOUT_MS=10000 CHUANGLAN_READ_TIMEOUT_MS=10000 SMS_CODE_TTL_SECONDS=300 SMS_RATE_LIMIT_SECONDS=60 # 联调时在 .env.docker 设为 true,日志会输出验证码与 sessionId(对应创蓝批次号);上线前改回 false SMS_DEBUG_LOG_CODE=false