- 新增 hzhub-portal-employee 员工门户前端项目(基于 Vue3 + Element Plus) - 后端登录接口增加返回 nickName 字段 - 移除 KnowledgeInfoController 的 @SaCheckPermission 注解 - 删除 hzhub-portal-company 旧门户项目 - 更新项目文档和架构说明 - 添加后台运行管理脚本(start-all.sh / status-all.sh / stop-all.sh) - 更新 docker-compose 配置 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
286 lines
5.6 KiB
Markdown
Executable File
286 lines
5.6 KiB
Markdown
Executable File
# 服务管理脚本使用说明
|
||
|
||
本项目为 `hzhub-admin`、`hzhub-ai` 和 `hzhub-portal-employee` 三个项目提供了后台运行管理脚本,方便开发调试。
|
||
|
||
## 📋 脚本列表
|
||
|
||
每个项目根目录下都包含以下脚本:
|
||
|
||
| 脚本 | 功能 | 说明 |
|
||
|------|------|------|
|
||
| `start.sh` | 启动服务 | 后台启动开发服务器 |
|
||
| `stop.sh` | 停止服务 | 停止后台运行的服务 |
|
||
| `restart.sh` | 重启服务 | 先停止后启动 |
|
||
| `status.sh` | 查看状态 | 查看服务运行状态和最新日志 |
|
||
| `logs.sh` | 查看日志 | 实时查看服务日志 |
|
||
|
||
## 🚀 快速开始
|
||
|
||
### 1. 启动后端服务 (hzhub-ai)
|
||
|
||
```bash
|
||
cd /data/hzhub/hzhub-ai
|
||
./start.sh
|
||
```
|
||
|
||
**输出示例:**
|
||
```
|
||
=========================================
|
||
启动 hzhub-ai 后端服务
|
||
=========================================
|
||
🚀 启动 Spring Boot 服务...
|
||
⏳ 等待服务启动中...
|
||
✅ 服务启动成功
|
||
PID: 12345
|
||
日志: /data/hzhub/hzhub-ai/logs/backend.log
|
||
API: http://localhost:6039
|
||
```
|
||
|
||
**访问地址:** http://localhost:6039
|
||
|
||
### 2. 启动管理后台 (hzhub-admin)
|
||
|
||
```bash
|
||
cd /data/hzhub/hzhub-admin
|
||
./start.sh
|
||
```
|
||
|
||
**访问地址:** http://localhost:5666
|
||
|
||
### 3. 启动员工门户 (hzhub-portal-employee)
|
||
|
||
```bash
|
||
cd /data/hzhub/hzhub-portal-employee
|
||
./start.sh
|
||
```
|
||
|
||
**访问地址:** http://localhost:5137
|
||
|
||
## 📊 查看服务状态
|
||
|
||
```bash
|
||
# 查看后端服务状态
|
||
cd /data/hzhub/hzhub-ai
|
||
./status.sh
|
||
|
||
# 查看管理后台状态
|
||
cd /data/hzhub/hzhub-admin
|
||
./status.sh
|
||
|
||
# 查看员工门户状态
|
||
cd /data/hzhub/hzhub-portal-employee
|
||
./status.sh
|
||
```
|
||
|
||
**输出示例:**
|
||
```
|
||
=========================================
|
||
hzhub-ai 服务状态
|
||
=========================================
|
||
状态: 🟢 运行中
|
||
PID: 12345
|
||
PID PPID CMD ELAPSED
|
||
12345 1 mvn spring-boot:run -Dspring- 00:15:32
|
||
|
||
日志文件: /data/hzhub/hzhub-ai/logs/backend.log
|
||
API地址: http://localhost:6039
|
||
|
||
端口状态: ✅ 6039 端口正在监听
|
||
```
|
||
|
||
## 📝 查看实时日志
|
||
|
||
```bash
|
||
# 查看后端日志
|
||
cd /data/hzhub/hzhub-ai
|
||
./logs.sh
|
||
|
||
# 或直接使用tail命令
|
||
tail -f /data/hzhub/hzhub-ai/logs/backend.log
|
||
```
|
||
|
||
按 `Ctrl+C` 退出日志查看。
|
||
|
||
## 🔄 重启服务
|
||
|
||
```bash
|
||
# 重启后端服务
|
||
cd /data/hzhub/hzhub-ai
|
||
./restart.sh
|
||
|
||
# 重启管理后台
|
||
cd /data/hzhub/hzhub-admin
|
||
./restart.sh
|
||
|
||
# 重启员工门户
|
||
cd /data/hzhub/hzhub-portal-employee
|
||
./restart.sh
|
||
```
|
||
|
||
## 🛑 停止服务
|
||
|
||
```bash
|
||
# 停止后端服务
|
||
cd /data/hzhub/hzhub-ai
|
||
./stop.sh
|
||
|
||
# 停止管理后台
|
||
cd /data/hzhub/hzhub-admin
|
||
./stop.sh
|
||
|
||
# 停止员工门户
|
||
cd /data/hzhub/hzhub-portal-employee
|
||
./stop.sh
|
||
```
|
||
|
||
## 💡 使用技巧
|
||
|
||
### 启动顺序建议
|
||
|
||
1. **先启动后端服务** (hzhub-ai)
|
||
```bash
|
||
cd /data/hzhub/hzhub-ai && ./start.sh
|
||
```
|
||
|
||
2. **等待后端完全启动** (约30-60秒)
|
||
```bash
|
||
./status.sh # 查看端口6039是否监听
|
||
```
|
||
|
||
3. **启动前端应用**
|
||
```bash
|
||
cd /data/hzhub/hzhub-admin && ./start.sh
|
||
cd /data/hzhub/hzhub-portal-employee && ./start.sh
|
||
```
|
||
|
||
### 一键启动所有服务
|
||
|
||
创建一个启动脚本 `/data/hzhub/start-all.sh`:
|
||
|
||
```bash
|
||
#!/bin/bash
|
||
echo "启动所有 HZHub 服务..."
|
||
|
||
cd /data/hzhub/hzhub-ai
|
||
./start.sh
|
||
sleep 10
|
||
|
||
cd /data/hzhub/hzhub-admin
|
||
./start.sh
|
||
|
||
cd /data/hzhub/hzhub-portal-employee
|
||
./start.sh
|
||
|
||
echo "所有服务启动完成!"
|
||
```
|
||
|
||
### 一键停止所有服务
|
||
|
||
创建一个停止脚本 `/data/hzhub/stop-all.sh`:
|
||
|
||
```bash
|
||
#!/bin/bash
|
||
echo "停止所有 HZHub 服务..."
|
||
|
||
cd /data/hzhub/hzhub-portal-employee
|
||
./stop.sh
|
||
|
||
cd /data/hzhub/hzhub-admin
|
||
./stop.sh
|
||
|
||
cd /data/hzhub/hzhub-ai
|
||
./stop.sh
|
||
|
||
echo "所有服务已停止!"
|
||
```
|
||
|
||
## ⚙️ 服务信息
|
||
|
||
| 项目 | 端口 | 日志文件 | PID文件 |
|
||
|------|------|----------|---------|
|
||
| hzhub-ai | 6039 | logs/backend.log | .pid |
|
||
| hzhub-admin | 5666 | logs/dev.log | .pid |
|
||
| hzhub-portal-employee | 5137 | logs/dev.log | .pid |
|
||
|
||
## 🔍 常见问题
|
||
|
||
### Q: 服务启动失败怎么办?
|
||
|
||
**A:** 检查以下几点:
|
||
1. 查看日志文件:`./logs.sh` 或 `tail -f logs/*.log`
|
||
2. 检查端口是否被占用:`netstat -tuln | grep 端口号`
|
||
3. 确认依赖是否安装:前端项目执行 `pnpm install`
|
||
4. 后端项目检查 Maven 是否可用:`mvn -v`
|
||
|
||
### Q: 如何确认服务是否完全启动?
|
||
|
||
**A:**
|
||
- **后端服务**:执行 `./status.sh` 查看6039端口是否监听
|
||
- **前端服务**:访问对应端口查看页面是否正常显示
|
||
|
||
### Q: PID文件损坏怎么办?
|
||
|
||
**A:** 手动删除PID文件:
|
||
```bash
|
||
rm .pid
|
||
./start.sh
|
||
```
|
||
|
||
### Q: 进程僵死无法停止?
|
||
|
||
**A:** 查找并强制终止进程:
|
||
```bash
|
||
# 查找进程
|
||
ps aux | grep "spring-boot\|vite\|pnpm"
|
||
|
||
# 强制终止
|
||
kill -9 <PID>
|
||
|
||
# 清理PID文件
|
||
rm .pid
|
||
```
|
||
|
||
## 📁 日志管理
|
||
|
||
### 日志位置
|
||
|
||
所有日志都保存在各项目的 `logs/` 目录下:
|
||
|
||
```
|
||
hzhub-ai/
|
||
├── logs/
|
||
│ └── backend.log
|
||
|
||
hzhub-admin/
|
||
├── logs/
|
||
│ └── dev.log
|
||
|
||
hzhub-portal-employee/
|
||
├── logs/
|
||
│ └── dev.log
|
||
```
|
||
|
||
### 日志轮转
|
||
|
||
建议定期清理日志文件:
|
||
|
||
```bash
|
||
# 清空日志文件
|
||
> logs/backend.log
|
||
|
||
# 或删除旧日志
|
||
rm logs/*.log
|
||
```
|
||
|
||
## ⚠️ 注意事项
|
||
|
||
1. **端口冲突**:确保端口 6039、5666、5137 未被其他服务占用
|
||
2. **资源占用**:后端服务启动较慢(30-60秒),请耐心等待
|
||
3. **开发模式**:这些脚本仅用于开发调试,生产环境请使用 Docker 部署
|
||
4. **数据持久化**:前端开发服务器会自动热重载,后端服务需要手动重启
|
||
|
||
## 🔗 相关文档
|
||
|
||
- [项目主文档](../CLAUDE.md)
|
||
- [部署文档](../hzhub-deploy/README.md)
|
||
- [开发环境配置](../docs/project/plan/phase-1.md) |