#!/bin/bash # LemonACP — 启动脚本 set -e # 加载 .env if [ -f .env ]; then set -a; source .env; set +a fi # 确保 nvm 可用 export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # 检查依赖 if [ ! -d "node_modules" ]; then echo "未安装依赖,请先运行: npm install" exit 1 fi # 清理端口冲突 PORT=${PORT:-3010} PID=$(lsof -ti:$PORT 2>/dev/null || true) if [ -n "$PID" ]; then echo "端口 $PORT 被占用 (PID: $PID),正在释放..." kill -9 $PID 2>/dev/null || true sleep 0.3 fi echo "LemonACP 启动中 (端口 $PORT)..." node server/index.js & SERVER_PID=$! sleep 1 echo "就绪: http://localhost:$PORT" echo "健康检查: http://localhost:$PORT/api/health" echo "按 Ctrl+C 停止" trap "kill $SERVER_PID 2>/dev/null; exit 0" SIGINT SIGTERM wait