docs(deployment): 更新部署文档并添加自动化部署脚本
- 更新了 DEPLOYMENT.md 文档,增加了更多部署细节和说明 - 添加了 Linux 和 Windows 平台的自动化部署脚本 - 更新了 README.md,增加了部署相关说明 - 调整了 .env 文件配置,以适应新的部署流程 - 移除了部分不必要的代码和配置
This commit is contained in:
107
backend/restart.sh
Executable file
107
backend/restart.sh
Executable file
@@ -0,0 +1,107 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 结伴客后端服务重启脚本
|
||||
|
||||
# 设置颜色输出
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
# 停止服务
|
||||
stop_server() {
|
||||
echo -e "${BLUE}正在停止结伴客后端服务...${NC}"
|
||||
|
||||
# 查找并停止结伴客后端服务进程
|
||||
PIDS=$(ps aux | grep "node src/server.js" | grep -v grep | awk '{print $2}')
|
||||
|
||||
if [ -z "$PIDS" ]; then
|
||||
echo -e "${YELLOW}未找到正在运行的结伴客后端服务进程${NC}"
|
||||
return 0
|
||||
fi
|
||||
|
||||
echo -e "${BLUE}找到以下结伴客后端服务进程: $PIDS${NC}"
|
||||
|
||||
for PID in $PIDS; do
|
||||
echo -e "${BLUE}正在停止进程 $PID...${NC}"
|
||||
kill $PID
|
||||
|
||||
# 等待进程结束
|
||||
COUNT=0
|
||||
while kill -0 $PID 2>/dev/null; do
|
||||
sleep 1
|
||||
COUNT=$((COUNT + 1))
|
||||
if [ $COUNT -gt 10 ]; then
|
||||
echo -e "${YELLOW}进程 $PID 未能正常停止,正在强制终止...${NC}"
|
||||
kill -9 $PID
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
echo -e "${GREEN}进程 $PID 已停止${NC}"
|
||||
done
|
||||
|
||||
echo -e "${GREEN}结伴客后端服务已停止${NC}"
|
||||
}
|
||||
|
||||
# 启动服务
|
||||
start_server() {
|
||||
echo -e "${BLUE}正在启动结伴客后端服务...${NC}"
|
||||
|
||||
# 检查是否提供了参数
|
||||
if [ "$1" = "dev" ]; then
|
||||
# 开发模式
|
||||
if command -v nodemon &> /dev/null; then
|
||||
nodemon src/server.js
|
||||
else
|
||||
echo -e "${YELLOW}未安装 nodemon,使用 node 运行...${NC}"
|
||||
node src/server.js
|
||||
fi
|
||||
else
|
||||
# 生产模式
|
||||
node src/server.js
|
||||
fi
|
||||
}
|
||||
|
||||
# 重启服务
|
||||
restart_server() {
|
||||
stop_server
|
||||
sleep 2
|
||||
start_server "$1"
|
||||
}
|
||||
|
||||
# 显示帮助信息
|
||||
show_help() {
|
||||
echo "结伴客后端服务重启脚本"
|
||||
echo ""
|
||||
echo "使用方法:"
|
||||
echo " ./restart.sh - 重启服务(生产模式)"
|
||||
echo " ./restart.sh dev - 重启服务(开发模式)"
|
||||
echo " ./restart.sh help - 显示帮助信息"
|
||||
echo ""
|
||||
echo "说明:"
|
||||
echo " 生产模式: 使用 node 直接运行服务"
|
||||
echo " 开发模式: 使用 nodemon 运行服务(支持热重载)"
|
||||
}
|
||||
|
||||
# 主逻辑
|
||||
main() {
|
||||
echo -e "${GREEN}========== 结伴客后端服务重启脚本 ==========${NC}"
|
||||
|
||||
# 检查参数
|
||||
case "$1" in
|
||||
"help"|"-h"|"--help")
|
||||
show_help
|
||||
;;
|
||||
"dev")
|
||||
restart_server "dev"
|
||||
;;
|
||||
*)
|
||||
restart_server
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# 执行主逻辑
|
||||
main "$@"
|
||||
Reference in New Issue
Block a user