deploy: 本地预构建发布(push-build),对齐 1Panel 与 backend_v2 目录

- 新增 Dockerfile.prebuilt / scripts/push-build.sh:本机构建、只上传产物,服务器零编译
- deploy.sh 增加 --prebuilt(自动 --no-pull + 产物校验),并保留 --no-cache
- compose 支持 BACKEND_DOCKERFILE / WEB_DOCKERFILE 切换;预构建时用 prebuilt 变体
- init-db.sh / scripts/backup-db.sh 改为 docker exec 1Panel 的 Postgres 容器
- WEB_DIR 默认改为 ../frontend_v2;nginx 切换文件改到 .deploy/ 避免弄脏工作区
- 新增 .gitattributes 固定脚本与配置为 LF
This commit is contained in:
toom1996
2026-10-21 00:02:18 +08:00
parent 822dd69911
commit 2e76507d37
11 changed files with 308 additions and 25 deletions

View File

@ -5,10 +5,18 @@
# ============================================================
# ---- 数据库 ----
# 生产复用宿主机上的 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 混淆盐:上线后不要再改,改了所有旧链接失效
@ -31,8 +39,8 @@ S4_REGION=cn-east-1
S4_BASE_URL=
# ---- 目录与访问 ----
# 前端仓库位置(服务器 /opt/fashion 下默认 ../test)
WEB_DIR=../test
# 前端仓库位置(服务器 /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