docs(deployment): 更新部署文档并添加自动化部署脚本
- 更新了 DEPLOYMENT.md 文档,增加了更多部署细节和说明 - 添加了 Linux 和 Windows 平台的自动化部署脚本 - 更新了 README.md,增加了部署相关说明 - 调整了 .env 文件配置,以适应新的部署流程 - 移除了部分不必要的代码和配置
This commit is contained in:
181
backend/README_SCRIPTS.md
Normal file
181
backend/README_SCRIPTS.md
Normal file
@@ -0,0 +1,181 @@
|
||||
# 结伴客后端服务管理脚本
|
||||
|
||||
## 概述
|
||||
|
||||
本目录包含用于管理结伴客后端服务的一组脚本,包括启动、停止、重启和状态检查等功能。
|
||||
|
||||
## 脚本说明
|
||||
|
||||
### start.sh - 启动脚本
|
||||
|
||||
用于启动结伴客后端服务。
|
||||
|
||||
#### 使用方法
|
||||
|
||||
```bash
|
||||
# 生产模式启动(默认)
|
||||
./start.sh
|
||||
|
||||
# 开发模式启动(支持热重载)
|
||||
./start.sh dev
|
||||
|
||||
# 显示帮助信息
|
||||
./start.sh help
|
||||
```
|
||||
|
||||
#### 功能特点
|
||||
|
||||
- 自动检查并安装依赖(如果未安装)
|
||||
- 自动复制环境变量文件(如果不存在)
|
||||
- 支持生产模式和开发模式
|
||||
- 开发模式下优先使用 nodemon(如果已安装)
|
||||
|
||||
### stop.sh - 停止脚本
|
||||
|
||||
用于停止正在运行的结伴客后端服务。
|
||||
|
||||
#### 使用方法
|
||||
|
||||
```bash
|
||||
# 停止服务
|
||||
./stop.sh
|
||||
|
||||
# 显示帮助信息
|
||||
./stop.sh help
|
||||
```
|
||||
|
||||
#### 功能特点
|
||||
|
||||
- 自动查找并停止所有相关的后端服务进程
|
||||
- 优雅地停止进程,超时后强制终止
|
||||
- 显示详细的进程停止信息
|
||||
|
||||
### restart.sh - 重启脚本
|
||||
|
||||
用于重启结伴客后端服务。
|
||||
|
||||
#### 使用方法
|
||||
|
||||
```bash
|
||||
# 生产模式重启(默认)
|
||||
./restart.sh
|
||||
|
||||
# 开发模式重启
|
||||
./restart.sh dev
|
||||
|
||||
# 显示帮助信息
|
||||
./restart.sh help
|
||||
```
|
||||
|
||||
#### 功能特点
|
||||
|
||||
- 结合了 stop.sh 和 start.sh 的所有功能
|
||||
- 支持生产模式和开发模式
|
||||
- 在停止和启动之间添加了延迟以确保服务完全停止
|
||||
|
||||
### status.sh - 状态检查脚本
|
||||
|
||||
用于检查结伴客后端服务的运行状态。
|
||||
|
||||
#### 使用方法
|
||||
|
||||
```bash
|
||||
# 检查服务状态
|
||||
./status.sh
|
||||
|
||||
# 显示详细信息
|
||||
./status.sh detail
|
||||
|
||||
# 显示帮助信息
|
||||
./status.sh help
|
||||
```
|
||||
|
||||
#### 功能特点
|
||||
|
||||
- 显示服务是否正在运行
|
||||
- 显示相关的进程信息
|
||||
- 详细模式下显示端口占用、工作目录等信息
|
||||
|
||||
## 使用示例
|
||||
|
||||
### 日常使用
|
||||
|
||||
```bash
|
||||
# 进入后端目录
|
||||
cd backend
|
||||
|
||||
# 启动服务
|
||||
./start.sh
|
||||
|
||||
# 检查服务状态
|
||||
./status.sh
|
||||
|
||||
# 重启服务
|
||||
./restart.sh
|
||||
|
||||
# 停止服务
|
||||
./stop.sh
|
||||
```
|
||||
|
||||
### 开发环境使用
|
||||
|
||||
```bash
|
||||
# 进入后端目录
|
||||
cd backend
|
||||
|
||||
# 以开发模式启动(支持热重载)
|
||||
./start.sh dev
|
||||
|
||||
# 检查服务状态
|
||||
./status.sh
|
||||
|
||||
# 重启服务(保持开发模式)
|
||||
./restart.sh dev
|
||||
|
||||
# 停止服务
|
||||
./stop.sh
|
||||
```
|
||||
|
||||
## 注意事项
|
||||
|
||||
1. 首次运行脚本前,请确保已安装 Node.js 和 npm
|
||||
2. 脚本会自动检查依赖并安装(如果未安装)
|
||||
3. 如果没有安装 nodemon,开发模式将回退到使用 node
|
||||
4. 脚本需要在后端项目根目录下运行
|
||||
5. 确保运行脚本的用户具有足够的权限
|
||||
|
||||
## 故障排除
|
||||
|
||||
### 权限问题
|
||||
|
||||
如果遇到权限问题,请为脚本添加执行权限:
|
||||
|
||||
```bash
|
||||
chmod +x start.sh stop.sh restart.sh status.sh
|
||||
```
|
||||
|
||||
或者使用 npm 命令:
|
||||
|
||||
```bash
|
||||
npm run start-scripts
|
||||
```
|
||||
|
||||
### 服务无法启动
|
||||
|
||||
1. 检查端口是否被占用:
|
||||
```bash
|
||||
netstat -tlnp | grep :3000
|
||||
```
|
||||
|
||||
2. 检查环境变量配置是否正确
|
||||
|
||||
3. 查看详细日志信息
|
||||
|
||||
### 服务无法停止
|
||||
|
||||
1. 脚本会自动等待10秒后强制终止进程
|
||||
2. 如果仍有问题,可以手动终止进程:
|
||||
```bash
|
||||
ps aux | grep "node src/server.js"
|
||||
kill -9 <PID>
|
||||
```
|
||||
Reference in New Issue
Block a user