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:
@@ -345,27 +345,60 @@ npm run test:all # type-check + lint + coverage + fast E2E
|
||||
|
||||
## 部署
|
||||
|
||||
### 静态部署
|
||||
### 统一发布脚本(推荐)
|
||||
|
||||
项目构建后生成纯静态文件,可部署到任何静态托管服务:
|
||||
项目发布统一通过 `scripts/deploy.sh` 完成,包含构建、发布、回滚、状态查看:
|
||||
|
||||
```bash
|
||||
# 构建静态产物
|
||||
./scripts/deploy.sh build
|
||||
|
||||
# 构建并发布到生产服务器(默认命令,等价于 ./scripts/deploy.sh deploy)
|
||||
./scripts/deploy.sh deploy
|
||||
|
||||
# 使用现有 dist/ 直接发布(跳过本地构建)
|
||||
./scripts/deploy.sh deploy --skip-build
|
||||
|
||||
# 回滚到最近一次远程备份
|
||||
./scripts/deploy.sh rollback
|
||||
|
||||
# 查看生产环境发布状态
|
||||
./scripts/deploy.sh status
|
||||
|
||||
# 查看完整帮助
|
||||
./scripts/deploy.sh help
|
||||
```
|
||||
|
||||
常用选项:
|
||||
|
||||
```bash
|
||||
./scripts/deploy.sh deploy --skip-build --auto-rollback
|
||||
./scripts/deploy.sh deploy --server-ip 139.155.109.62 --project-name novalon-website
|
||||
```
|
||||
|
||||
也可通过环境变量覆盖默认配置:`SERVER_IP`、`SERVER_USER`、`DEPLOY_ROOT`、`PROJECT_NAME`、`NGINX_CONTAINER`、`DOMAIN`、`BACKUP_RETENTION_COUNT`、`DIST_DIR`。
|
||||
|
||||
npm 快捷命令:`npm run deploy`、`npm run deploy:skip-build`、`npm run deploy:rollback`、`npm run deploy:status`。
|
||||
|
||||
### 纯静态构建
|
||||
|
||||
项目构建后生成纯静态文件,产物位于 `dist/` 目录:
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
构建产物位于 `dist/` 目录,可直接部署到:
|
||||
`dist/` 可直接部署到:
|
||||
- Nginx
|
||||
- CDN
|
||||
- Vercel
|
||||
- Netlify
|
||||
- GitHub Pages
|
||||
|
||||
### Docker 部署
|
||||
### CI/CD
|
||||
|
||||
Jenkins Pipeline(`Jenkinsfile`)在部署阶段调用 `./scripts/deploy.sh deploy --skip-build`,部署失败时自动调用 `./scripts/deploy.sh rollback` 回滚。
|
||||
|
||||
```bash
|
||||
docker build -t novalon-website .
|
||||
docker run -p 3000:3000 novalon-website
|
||||
```
|
||||
|
||||
## 文档
|
||||
|
||||
|
||||
Reference in New Issue
Block a user