# ============================================================ # 青叶 (QingYe) —— 生产环境变量模板 # ------------------------------------------------------------ # 用法: # cp .env.prod.example .env.prod # 然后把下面所有「请替换…」的值改为真实强随机值。 # # 生成强随机密钥(在 VPS 上执行): # openssl rand -hex 32 # # 注意: # * .env.prod 已在 .gitignore 中,不会被提交。 # * POSTGRES_PASSWORD 与 ADMIN_PASSWORD 仅在「首次启动」时写入: # - PostgreSQL 只在数据卷为空时初始化口令,首次启动后修改本文件无效。 # - 管理员密码同样只在首次启动写入数据库。 # 因此请务必在第一次 docker compose up 之前就把它们设好! # ============================================================ # ---------- PostgreSQL ---------- POSTGRES_DB=qingye POSTGRES_USER=qingye # 必填:用 openssl rand -hex 32 生成 # ⚠️ 重要:此口令会被拼入 DATABASE_URL,必须「URL 安全」——只能含字母和数字, # 不能包含 : / @ # ? % & + 空格 等特殊字符(否则连接串解析失败,后端连不上库)。 # 所以务必使用 openssl rand -hex 32(纯十六进制)这类无特殊字符的随机串。 POSTGRES_PASSWORD=__替换为强随机密码_请用_openssl_rand_hex_32__ # ---------- 后端密钥 ---------- # 必填:用 openssl rand -hex 32 生成(两个用不同的值) JWT_SECRET_KEY=__替换为强随机密钥_请用_openssl_rand_hex_32__ JWT_REFRESH_SECRET_KEY=__替换为强随机密钥_请用_openssl_rand_hex_32__ # CORS 允许来源(生产同源,填你的域名;多个用英文逗号分隔) CORS_ORIGINS=https://www.e4s.world # 管理员初始密码(首次启动写入数据库,之后在管理后台修改) ADMIN_PASSWORD=__替换为强密码__ # ---------- 无需修改 ---------- # DATABASE_URL 由 docker-compose.prod.yml 用上面的 POSTGRES_* 自动拼接 # REDIS_URL 由 compose 固定为 redis://redis:6379/0