#!/bin/bash # LLM Performance Test Tool 部署脚本 # 部署到 8001 端口 set -e APP_NAME="llm_perf_test" APP_DIR="/opt/llm_perf_test" PORT=8001 USER=$(whoami) echo "=== LLM Performance Test Tool 部署脚本 ===" echo "" # 检查 Python if ! command -v python3 &> /dev/null; then echo "错误: 未找到 Python3" exit 1 fi PYTHON_VERSION=$(python3 --version 2>&1 | awk '{print $2}') echo "Python 版本: $PYTHON_VERSION" # 创建应用目录 echo "创建应用目录: $APP_DIR" sudo mkdir -p $APP_DIR sudo chown $USER:$USER $APP_DIR # 复制文件 echo "复制应用文件..." cp -r ./* $APP_DIR/ # 安装依赖 echo "安装 Python 依赖..." cd $APP_DIR # 根据 Python 版本安装不同版本的依赖 PY_MAJOR=$(python3 -c "import sys; print(sys.version_info.major)") PY_MINOR=$(python3 -c "import sys; print(sys.version_info.minor)") if [ "$PY_MAJOR" -eq 3 ] && [ "$PY_MINOR" -le 6 ]; then echo "检测到 Python 3.6,安装兼容版本..." pip3 install --user flask==1.1.4 requests==2.27.1 2>/dev/null || \ pip3 install flask==1.1.4 requests==2.27.1 else pip3 install --user -r requirements.txt 2>/dev/null || \ pip3 install -r requirements.txt fi # 创建数据目录 mkdir -p $APP_DIR/data # 创建 systemd 服务文件 echo "创建系统服务..." sudo tee /etc/systemd/system/$APP_NAME.service > /dev/null </dev/null || true # 启动服务 echo "启动服务..." sudo systemctl start $APP_NAME sudo systemctl enable $APP_NAME # 检查状态 sleep 2 if sudo systemctl is-active --quiet $APP_NAME; then echo "" echo "=== 部署成功! ===" echo "应用地址: http://$(hostname -I | awk '{print $1}'):$PORT" echo "本地地址: http://localhost:$PORT" echo "" echo "查看日志: sudo journalctl -u $APP_NAME -f" echo "停止服务: sudo systemctl stop $APP_NAME" echo "重启服务: sudo systemctl restart $APP_NAME" else echo "" echo "=== 部署失败 ===" echo "请检查日志: sudo journalctl -u $APP_NAME -n 50" exit 1 fi