# ============================================================================= # MeshSafe 生产部署环境变量(示例模板) # 复制为 .env 后填入真实值(master_key + db_password + admin_password 必须改) # ============================================================================= # # docker-compose.yml 会自动加载同级 .env 文件。 # Settings 类(app/config.py)通过 pydantic_settings 读取,前缀 MESHSAFE_。 # # 字段分三类: # ── 必填(缺失启动报错)──────────── # MESHSAFE_MASTER_KEY 主密钥(base64 ≥ 32 字节)—— 密码哈希/HMAC 签名/HKDF 派生都用它 # MESHSAFE_DB_PASSWORD PostgreSQL 密码 —— 与 compose postgres.POSTGRES_PASSWORD 保持一致 # MESHSAFE_ADMIN_PASSWORD 默认管理员初始密码 —— scripts/init_db.py 首次建 admin 时使用 # # ── docker-compose.yml 内置(API 服务会注入)── # MESHSAFE_DB_URL =postgresql+psycopg://meshsafe:@postgres:5432/meshsafe # MESHSAFE_CLAMAV_HOST =clamav # MESHSAFE_CLAMAV_PORT =3310 # MESHSAFE_REDIS_URL =redis://redis:6379/0 # # ── 可选(有合理默认值)────────── # MESHSAFE_ENV prod | dev # MESHSAFE_HOST 0.0.0.0 # MESHSAFE_PORT 8443 # MESHSAFE_LOG_LEVEL DEBUG | INFO | WARNING | ERROR # MESHSAFE_LOG_DIR /var/log/meshsafe # MESHSAFE_WORKERS 2(异步扫描后台 worker 数) # MESHSAFE_RULES_DIR /app/rules(YARA 规则目录) # MESHSAFE_POLICY_FILE /app/config/policy.yaml # # ---------- master_key 生成 ---------- # python -c "import base64, os; print(base64.b64encode(os.urandom(32)).decode())" # ============================================================================= # ---------- 必填 ---------- MESHSAFE_MASTER_KEY=CHANGE_ME_GENERATE_WITH_COMMAND_ABOVE MESHSAFE_DB_PASSWORD=CHANGE_ME_DB_PASSWORD MESHSAFE_ADMIN_PASSWORD=CHANGE_ME_ADMIN_PASSWORD # ---------- 可选 ---------- MESHSAFE_ENV=prod MESHSAFE_LOG_LEVEL=INFO MESHSAFE_LOG_DIR=/var/log/meshsafe MESHSAFE_WORKERS=2 MESHSAFE_RULES_DIR=/app/rules MESHSAFE_POLICY_FILE=/app/config/policy.yaml MESHSAFE_HOST=0.0.0.0 MESHSAFE_PORT=8443