Files
backend_v2/.env.example
toom1996 c483018cc8 chore: 补 S4 启用与配置合并的运维脚本
- scripts/patch_env.py:把 KEY=VALUE 文件合并进 .env,只回显键名与长度,不回显密钥
- scripts/check_s4.py:在生产机上验证「预签名 → PUT → 公开读回」整条直传链路
- .env.example:注明本地后端连生产库时 HASHID_SECRET 必须与线上一致
  (不一致会把线上 brand_uid 解码成另一个 id,任务被判 brand not found)
2026-10-25 01:24:57 +08:00

75 lines
3.0 KiB
Plaintext
Raw Permalink 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 后填写(.env 已在 .gitignore 中)
# cp .env.example .env
# 生成随机密钥:openssl rand -hex 32
# ============================================================
# ---- 数据库 ----
# 生产复用宿主机上的 Postgres(如 1Panel 自带),容器内经 host-gateway 访问
# 下列 DB_* 同时用于容器与 init-db.sh / backup-db.sh(脚本走 --network host)
DB_USER=fashion
DB_NAME=fashion
# 上线必改:不要沿用开发库口令
DB_PASSWORD=
# 容器内访问宿主的固定写法;若数据库在另一台机器,改成那台的地址
DB_HOST=host.docker.internal
DB_PORT=5432
# 1Panel 管理的 Postgres 容器名(init-db.sh / backup-db.sh 直接 docker exec 进去)
# 查法:docker ps --format '{{.Names}}' | grep -i postgres
PG_CONTAINER=1Panel-postgresql-4Ndp
# ---- 后端密钥(必填,缺了容器拒绝启动)----
# 公开 ID 混淆盐:上线后不要再改,改了所有旧链接失效
# ⚠️ 本地开发后端若连的是生产库(同一套 DB),这个值必须与线上完全一致。
# 不一致时本地后端会把 crawl/ingest 里线上编码的 brand_uid 解码成另一个 id,
# 任务被判「brand not found」——本地机器于是把生产队列里的任务做成失败。
HASHID_SECRET=
JWT_SECRET=
# 爬虫上报 HMAC 密钥:须与爬虫端 config.yml 的 ingest.secret 完全一致
INGEST_SECRET=
# SSG 内部接口令牌(可选,留空则只依赖回环绑定)
SSG_TOKEN=
# ---- 对象存储(缤纷云 S4)----
S4_ENABLED=true
# 从开发机 configs/config.local.yml 取,或到控制台重新生成子账户密钥
S4_AK=
S4_SK=
S4_BUCKET=toomstudio
S4_ENDPOINT=https://s3.bitiful.net
S4_REGION=cn-east-1
# 留空自动推导为 https://<bucket>.s3.bitiful.net
S4_BASE_URL=
# ---- 目录与访问 ----
# 前端仓库位置(服务器 /opt/fashion 下是 ../frontend_v2)
WEB_DIR=../frontend_v2
# 前端 nginx 监听端口(有宿主机 nginx/宝塔占用 80 时改成 8080 再由外层反代)
HTTP_PORT=80
CORS_ALLOW_ORIGINS=https://xisoa.com,https://www.xisoa.com
# ---- 限流(生产建议开启)----
RATE_LIMIT_ENABLED=true
RATE_LIMIT_RPS=20
RATE_LIMIT_BURST=40
# ---- 入库 worker(下载并发 1~16,Vogue 实测 4 较稳)----
INGEST_IMAGE_CONCURRENCY=4
# 图片下载代理,留空直连;仅作用于下载,不影响上传与数据库
INGEST_DOWNLOAD_PROXY=
# ---- 视觉服务(可选,默认关闭)----
VISION_ENABLED=false
VISION_ENDPOINT=http://127.0.0.1:8900
# ---- 构建 ----
# 服务器拉 Go 依赖的代理
GOPROXY=https://goproxy.cn,direct
# ---- 代码分支 ----
# deploy.sh 会把后端仓与前端仓都切到该分支并快进拉取;临时换分支:
# GIT_BRANCH=dev ./deploy.sh all
# 不想拉代码(例如手动 checkout 了某个提交)时加 --no-pull
# 注意:本项目远程默认分支是 main(不是 master),日常开发在 dev 上
GIT_BRANCH=main