refactor(deploy): 统一发布脚本为单一入口 scripts/deploy.sh

- 新增 scripts/deploy.sh,支持 build/deploy/rollback/status 子命令
- 删除 deploy.sh、deploy-dist.sh、scripts/deploy-static.sh、scripts/deployment/deploy-production.sh
- Jenkinsfile 部署/回滚改为调用统一脚本,移除内联部署逻辑与 STATIC_DIR
- 同步 README、DEPLOYMENT、docs、CLAUDE.md、setup-cicd 与 package.json 脚本
This commit is contained in:
2026-08-17 18:40:51 +08:00
parent 315d664b9c
commit af57504e8e
19 changed files with 511 additions and 657 deletions
+14 -17
View File
@@ -85,35 +85,32 @@
- `ssl/` -> `/etc/nginx/ssl`(只读)
- `logs/` -> `/var/log/nginx`
- `../certbot` -> `/var/www/certbot`ACME 验证)
- `../novalon-static` -> `/var/www/novalon`(只读,静态文件)
- `../novalon-website/dist` -> `/var/www/novalon`(只读,Novalon 主站静态文件)
- `../novalon-static` -> `/var/www/novavis-landing`(只读,Novavis 落地页)
- 使用外部网络 `novalon-network`
---
### 三、部署脚本(2 个)
### 三、部署脚本(1统一入口
#### 9. [deploy.sh](computer:///sessions/69e889f08f8c93c2514713f1/workspace/deploy.sh)
**用途**: 完整部署脚本 -- SSH 到远程服务器执行 Docker 构建+部署
#### 9. [scripts/deploy.sh](../scripts/deploy.sh)
**用途**: 统一发布脚本(唯一发布入口),负责构建、发布、回滚与状态查看
**关键内容**:
- 默认服务器 `139.155.109.62`root 用户),部署路径 `/home/novalon/docker-app/novalon-website`
- 容器名 `novalon-website`Nginx 容器名 `novalon-nginx`
- 流程: 部署前检查 -> SSH 验证 -> SCP 上传文件 -> 服务器端 SSL 配置 -> `docker-compose build --no-cache` -> `docker-compose up -d` -> 健康检查 -> SSL 自动续期 cron 配置
- 支持命令行参数: `-i`(IP)、`-u`(用户)、`-p`(项目名)、`-c`(容器名)、`-v`(版本号)
#### 10. [deploy-dist.sh](computer:///sessions/69e889f08f8c93c2514713f1/workspace/deploy-dist.sh)
**用途**: 轻量部署脚本 -- 仅上传预构建的 `dist/` 目录到服务器。
**关键内容**:
- 同一服务器 `139.155.109.62`,部署到 `/home/novalon/docker-app/novalon-website/dist`
- 流程: 检查 dist 目录 -> SSH 验证 -> 备份旧版本 -> rsync 上传 -> 设置文件权限 -> 验证 -> 清理旧备份(保留最近 3 个)
- 适用于已有 Nginx 容器运行、仅需更新静态文件的场景
- 默认服务器 `139.155.109.62`root 用户),远程目标目录 `/home/novalon/docker-app/novalon-website/dist`(生产 Nginx 实际挂载目录)
- 命令:
- `build`:构建静态产物
- `deploy`:构建 + 远程发布(备份旧版本 -> rsync 上传 -> 设置权限 -> 重载 Nginx -> 验证页面)
- `rollback`:回滚到最近一次远程备份
- `status`:查看生产环境发布状态
- 支持 `--skip-build``--auto-rollback``--dry-run` 及服务器/域名/备份保留数等参数
- 支持环境变量覆盖:`SERVER_IP``SERVER_USER``DEPLOY_ROOT``PROJECT_NAME``NGINX_CONTAINER``DOMAIN``BACKUP_RETENTION_COUNT``DIST_DIR`
---
### 四、引用 "novalon-nginx" / "novalon-website" 的其他文件(29 个)
除上述 10 个核心文件外,以下文件也引用了这两个关键词,按类别归纳:
除上述 9 个核心文件外,以下文件也引用了这两个关键词,按类别归纳:
| 类别 | 文件路径 |
|------|----------|