docs(deployment): 更新部署文档并添加自动化部署脚本

- 更新了 DEPLOYMENT.md 文档,增加了更多部署细节和说明
- 添加了 Linux 和 Windows 平台的自动化部署脚本
- 更新了 README.md,增加了部署相关说明
- 调整了 .env 文件配置,以适应新的部署流程
- 移除了部分不必要的代码和配置
This commit is contained in:
2025-09-10 14:16:27 +08:00
parent 18fe719f94
commit b2d940e014
114 changed files with 6990 additions and 247 deletions

93
backend/start.sh Executable file
View File

@@ -0,0 +1,93 @@
#!/bin/bash
# 结伴客后端服务启动脚本
# 设置颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
# 检查是否已经安装依赖
check_dependencies() {
if [ ! -d "node_modules" ]; then
echo -e "${YELLOW}检测到未安装依赖,正在安装...${NC}"
npm install
if [ $? -ne 0 ]; then
echo -e "${RED}依赖安装失败!${NC}"
exit 1
fi
echo -e "${GREEN}依赖安装完成!${NC}"
fi
}
# 检查环境变量文件
check_env() {
if [ ! -f ".env" ]; then
echo -e "${YELLOW}未找到 .env 文件,正在复制示例文件...${NC}"
if [ -f ".env.example" ]; then
cp .env.example .env
echo -e "${GREEN}.env 文件已创建,请根据需要修改配置!${NC}"
else
echo -e "${RED}未找到 .env.example 文件!${NC}"
fi
fi
}
# 启动服务
start_server() {
echo -e "${GREEN}正在启动结伴客后端服务...${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
}
# 显示帮助信息
show_help() {
echo "结伴客后端服务启动脚本"
echo ""
echo "使用方法:"
echo " ./start.sh - 以生产模式启动服务"
echo " ./start.sh dev - 以开发模式启动服务"
echo " ./start.sh help - 显示帮助信息"
echo ""
echo "说明:"
echo " 生产模式: 使用 node 直接运行服务"
echo " 开发模式: 使用 nodemon 运行服务(支持热重载)"
}
# 主逻辑
main() {
echo -e "${GREEN}========== 结伴客后端服务启动脚本 ==========${NC}"
# 检查参数
case "$1" in
"help"|"-h"|"--help")
show_help
;;
"dev")
check_dependencies
check_env
start_server "dev"
;;
*)
check_dependencies
check_env
start_server
;;
esac
}
# 执行主逻辑
main "$@"