# ==================== 数据库配置（PostgreSQL） ====================
# DB_HOST 决定使用本地容器还是远程数据库：
#   - postgres / localhost / 127.0.0.1 → 启动本地 PostgreSQL 容器
#   - 其他地址（如 192.168.1.100）    → 使用远程数据库，不启动本地容器
DB_HOST=postgres
DB_PORT=5432
DB_NAME=xingrin
DB_USER=postgres
DB_PASSWORD=123.com

# ==================== Redis 配置 ====================
# Redis 仅在 Docker 内部网络使用，不暴露公网端口
REDIS_HOST=redis
REDIS_DB=0

# ==================== 服务端口配置 ====================
# SERVER_PORT 为 Django / uvicorn 容器内部端口（由 nginx 反代，对公网不直接暴露）
SERVER_PORT=8888

# ==================== 远程 Worker 配置 ====================
# 供远程 Worker 访问主服务器的地址：
#   - 仅本地部署：server（Docker 内部服务名）
#   - 有远程 Worker：改为主服务器外网 IP 或域名（如 192.168.1.100 或 xingrin.example.com）
# 注意：远程 Worker 会通过 https://{PUBLIC_HOST}:{PUBLIC_PORT} 访问（nginx 反代到后端 8888）
PUBLIC_HOST=server
# 对外 HTTPS 端口
PUBLIC_PORT=8083

# ==================== Django 核心配置 ====================
# 生产环境务必更换为随机强密钥
DJANGO_SECRET_KEY=django-insecure-change-me-in-production
# 是否开启调试模式（生产环境请保持 False）
DEBUG=False
# 允许的前端来源地址（用于 CORS）
CORS_ALLOWED_ORIGINS=http://localhost:3000

# ==================== 路径配置（容器内路径） ====================
# 扫描结果保存目录
SCAN_RESULTS_DIR=/opt/xingrin/results
# Django 日志目录
# 注意：如果留空或删除此变量，日志将只输出到 Docker 控制台（标准输出），不写入文件
LOG_DIR=/opt/xingrin/logs
# 扫描工具路径（容器内路径，符合 FHS 标准，已隔离避免命名冲突）
# 默认值已在 settings.py 中设置，无需修改，除非需要回退到旧路径
SCAN_TOOLS_PATH=/opt/xingrin-tools/bin

# ==================== 日志级别配置 ====================
# 应用日志级别：DEBUG / INFO / WARNING / ERROR
LOG_LEVEL=INFO
# 是否记录命令执行日志（大量扫描时会增加磁盘占用）
ENABLE_COMMAND_LOGGING=true

# ==================== Worker API Key 配置 ====================
# Worker 节点认证密钥（用于 Worker 与主服务器之间的 API 认证）
# 生产环境务必更换为随机强密钥（建议 32 位以上随机字符串）
# 生成方法: openssl rand -hex 32
WORKER_API_KEY=change-me-to-a-secure-random-key

# ==================== Docker Hub 配置（生产模式） ====================
# 生产模式下从 Docker Hub 拉取镜像时使用
DOCKER_USER=yyhuni
# 镜像版本标签（安装时自动从 VERSION 文件读取）
# VERSION 文件由 CI 自动更新，与 Git Tag 保持一致
# 注意：此值由 install.sh 自动设置，请勿手动修改
IMAGE_TAG=__WILL_BE_SET_BY_INSTALLER__
