签入版本
This commit is contained in:
@@ -0,0 +1,92 @@
|
||||
# 11.1 部署 Checklist
|
||||
|
||||
:::tip 概述
|
||||
生产上线前逐项核对:安全基线(密钥/万能码/错误信息)、依赖服务(MySQL/Redis)、配置核对、静态资源、验证步骤。本清单可直接用于发布评审。
|
||||
:::
|
||||
|
||||
## 上线前 Checklist
|
||||
|
||||
### 安全基线(必须)
|
||||
|
||||
```text
|
||||
□ jwt.secret 已更换为高强度随机值(与环境隔离)
|
||||
□ captcha.bypassCode 已留空(万能验证码禁止上线)
|
||||
□ app.demo = false
|
||||
□ app.errorMsg = false(不返回详细错误信息)
|
||||
□ server.errorStack = false
|
||||
□ database.default.debug = false
|
||||
□ redis.default.pass 强密码
|
||||
□ database 使用独立账号(非 root,最小权限)
|
||||
□ api.proxyIps 只列真实反代出口
|
||||
□ file.fileExt 按业务收紧(公网上传场景)
|
||||
□ rateLimit.enable = true(authLimit 不调大)
|
||||
```
|
||||
|
||||
### 依赖服务
|
||||
|
||||
```text
|
||||
□ MySQL 已建库并导入 document/mysql/ 定稿脚本(含种子数据)
|
||||
□ 13 个 uk_* 唯一索引齐全(对照 4.9 数据库设计)
|
||||
□ Redis 可用(/api/cache/info mode 应为 redis)
|
||||
□ 数据库/Redis 内网可达,不暴露公网
|
||||
□ 磁盘空间(上传目录/日志/备份分区)
|
||||
□ 服务器时区与 app.timezone 一致
|
||||
```
|
||||
|
||||
### 后端
|
||||
|
||||
```text
|
||||
□ go build 编译通过(目标平台交叉编译注意 GOOS/GOARCH)
|
||||
□ config.yaml 生产配置核对(database/redis/jwt/file/cors)
|
||||
□ file.uploadDir 挂持久卷(容器场景)/独立分区
|
||||
□ manifest/data/ip2region.xdb 存在(归属地功能)
|
||||
□ resource/static、resource/swagger 随二进制部署
|
||||
□ 优雅重启已启用(server.graceful)
|
||||
□ 进程守护(systemd/supervisor)与开机自启
|
||||
□ 日志目录可写(logger.path)
|
||||
```
|
||||
|
||||
### 前端
|
||||
|
||||
```text
|
||||
□ pnpm build 构建产物 dist/
|
||||
□ Nginx 托管静态 + try_files SPA 回退
|
||||
□ /api 与 /upload 反代后端
|
||||
□ VITE 环境变量与后端域名一致(子路径部署核对 PUBLIC_PATH)
|
||||
□ HTTPS 证书(前置代理终止)
|
||||
```
|
||||
|
||||
### 验证
|
||||
|
||||
```text
|
||||
□ GET /api/health → {"code":0,...,"data":{"status":"up"}}
|
||||
□ /swagger 页面可访问(OpenAPI)
|
||||
□ admin 登录成功 → 首页菜单正常
|
||||
□ 登录日志/操作日志正常落库
|
||||
□ /api/cache/info mode=redis
|
||||
□ /api/server/info 全项正常(磁盘/DB/调度器)
|
||||
□ 限流生效(快速刷新触发 429)
|
||||
□ 上传→预览→保存→转正 全链路
|
||||
□ 定时任务挂载(daemonStatus / Scheduler.mounted)
|
||||
```
|
||||
|
||||
## 发布顺序(推荐)
|
||||
|
||||
```text
|
||||
1. 备份数据库与旧版本二进制
|
||||
2. 停旧服务(或优雅重启)
|
||||
3. 部署新二进制 + 配置
|
||||
4. 启动 → health 检查
|
||||
5. 冒烟(登录/核心接口)
|
||||
6. 观察日志(启动告警/错误)
|
||||
7. 出现问题回滚(旧二进制 + 备份库)
|
||||
```
|
||||
|
||||
## 回滚预案
|
||||
|
||||
```text
|
||||
□ 旧二进制可一键切回
|
||||
□ 数据库变更已评估可回滚性(新增表/列可保留;破坏性变更需还原备份)
|
||||
□ 前端旧 dist 保留可切回
|
||||
□ 回滚演练记录
|
||||
```
|
||||
Reference in New Issue
Block a user