Files
jiebanke/backend/README_SCRIPTS.md
aiotagro b2d940e014 docs(deployment): 更新部署文档并添加自动化部署脚本
- 更新了 DEPLOYMENT.md 文档,增加了更多部署细节和说明
- 添加了 Linux 和 Windows 平台的自动化部署脚本
- 更新了 README.md,增加了部署相关说明
- 调整了 .env 文件配置,以适应新的部署流程
- 移除了部分不必要的代码和配置
2025-09-10 14:16:27 +08:00

3.0 KiB
Raw Blame History

结伴客后端服务管理脚本

概述

本目录包含用于管理结伴客后端服务的一组脚本,包括启动、停止、重启和状态检查等功能。

脚本说明

start.sh - 启动脚本

用于启动结伴客后端服务。

使用方法

# 生产模式启动(默认)
./start.sh

# 开发模式启动(支持热重载)
./start.sh dev

# 显示帮助信息
./start.sh help

功能特点

  • 自动检查并安装依赖(如果未安装)
  • 自动复制环境变量文件(如果不存在)
  • 支持生产模式和开发模式
  • 开发模式下优先使用 nodemon如果已安装

stop.sh - 停止脚本

用于停止正在运行的结伴客后端服务。

使用方法

# 停止服务
./stop.sh

# 显示帮助信息
./stop.sh help

功能特点

  • 自动查找并停止所有相关的后端服务进程
  • 优雅地停止进程,超时后强制终止
  • 显示详细的进程停止信息

restart.sh - 重启脚本

用于重启结伴客后端服务。

使用方法

# 生产模式重启(默认)
./restart.sh

# 开发模式重启
./restart.sh dev

# 显示帮助信息
./restart.sh help

功能特点

  • 结合了 stop.sh 和 start.sh 的所有功能
  • 支持生产模式和开发模式
  • 在停止和启动之间添加了延迟以确保服务完全停止

status.sh - 状态检查脚本

用于检查结伴客后端服务的运行状态。

使用方法

# 检查服务状态
./status.sh

# 显示详细信息
./status.sh detail

# 显示帮助信息
./status.sh help

功能特点

  • 显示服务是否正在运行
  • 显示相关的进程信息
  • 详细模式下显示端口占用、工作目录等信息

使用示例

日常使用

# 进入后端目录
cd backend

# 启动服务
./start.sh

# 检查服务状态
./status.sh

# 重启服务
./restart.sh

# 停止服务
./stop.sh

开发环境使用

# 进入后端目录
cd backend

# 以开发模式启动(支持热重载)
./start.sh dev

# 检查服务状态
./status.sh

# 重启服务(保持开发模式)
./restart.sh dev

# 停止服务
./stop.sh

注意事项

  1. 首次运行脚本前,请确保已安装 Node.js 和 npm
  2. 脚本会自动检查依赖并安装(如果未安装)
  3. 如果没有安装 nodemon开发模式将回退到使用 node
  4. 脚本需要在后端项目根目录下运行
  5. 确保运行脚本的用户具有足够的权限

故障排除

权限问题

如果遇到权限问题,请为脚本添加执行权限:

chmod +x start.sh stop.sh restart.sh status.sh

或者使用 npm 命令:

npm run start-scripts

服务无法启动

  1. 检查端口是否被占用:

    netstat -tlnp | grep :3000
    
  2. 检查环境变量配置是否正确

  3. 查看详细日志信息

服务无法停止

  1. 脚本会自动等待10秒后强制终止进程
  2. 如果仍有问题,可以手动终止进程:
    ps aux | grep "node src/server.js"
    kill -9 <PID>