kindergarten_java/README-BAOTA-DEPLOY.md

171 lines
3.0 KiB
Markdown
Raw Permalink Normal View History

# 宝塔部署快速配置指南
## 第一次部署前,请在宝塔面板完成以下操作:
### 1. 安装基础服务
登录宝塔面板 → 软件商店 → 安装以下软件:
| 软件 | 版本 | 说明 |
|------|------|------|
| Nginx | 1.24+ | Web 服务器 |
| MySQL | 8.0+ | 数据库 |
| Redis | 7.x | 缓存 |
| Java | JDK 17 | 运行环境 |
### 2. 创建数据库
宝塔面板 → 数据库 → 添加:
```
数据库名lesingle-edu-reading-platform
用户名reading_platform
密码:[设置一个强密码,记下来]
权限:全部
```
### 3. 配置环境变量
复制配置文件模板:
```bash
cp .env.prod.template .env.prod
```
编辑 `.env.prod`,填入实际值:
```bash
# 数据库密码(从宝塔获取)
DB_PASSWORD=你的数据库密码
# JWT 密钥(必须修改)
JWT_SECRET=你的-production-jwt-secret-至少-32-字符
# Redis 密码(如果宝塔设置了)
REDIS_PASSWORD=
```
### 4. 修改部署脚本配置
编辑 `deploy-backend.sh`,找到环境变量部分,填入你的配置:
```bash
# 在启动脚本中添加环境变量
export DB_PASSWORD=你的数据库密码
export JWT_SECRET=你的 JWT 密钥
```
或者在服务器上创建 `/www/wwwroot/reading-platform/.env` 文件。
---
## 一键部署
```bash
# 方式 1使用主部署脚本
./deploy.sh root@你的服务器 IP
# 方式 2分别部署
export REMOTE_HOST=你的服务器 IP
./deploy-backend.sh # 部署后端
./deploy-frontend.sh # 部署前端
```
---
## 部署后配置
### 1. 配置 Nginx 反向代理
宝塔面板 → 网站 → 你的网站 → 设置 → 配置文件:
粘贴 `nginx-baota.conf` 中的配置。
### 2. 验证部署
```bash
# SSH 登录服务器
ssh root@你的服务器 IP
# 检查后端健康状态
curl http://localhost:8480/actuator/health
# 查看后端日志
tail -f /www/wwwroot/reading-platform/logs/app.log
```
### 3. 访问应用
- 前端http://你的服务器 IP
- API 文档http://你的服务器 IP:8480/swagger-ui.html
---
## 常用命令
### 后端管理
```bash
# 登录服务器
ssh root@你的服务器 IP
# 进入目录
cd /www/wwwroot/reading-platform
# 启动
./start.sh
# 停止
./stop.sh
# 查看日志
tail -f logs/app.log
# 查看进程
ps aux | grep app.jar
```
### 前端更新
```bash
# 本地重新构建并部署
./deploy-frontend.sh root@你的服务器 IP
```
---
## 问题排查
### 后端启动失败
```bash
# 查看详细日志
tail -100 /www/wwwroot/reading-platform/logs/app.log
# 检查 Java 版本
java -version
# 检查端口占用
netstat -tlnp | grep 8480
```
### 前端页面空白
1. 打开浏览器 ConsoleF12
2. 查看 Network 标签,检查 API 请求
3. 确认 Nginx 反向代理配置正确
### 数据库连接失败
1. 确认数据库已创建
2. 确认数据库密码正确
3. 确认 MySQL 服务运行中
---
## 需要帮助?
- 详细部署文档:`DEPLOY_BAOTA.md`
- Nginx 配置:`nginx-baota.conf`
- 环境变量模板:`.env.prod.template`