38 lines
799 B
Bash
Executable File
38 lines
799 B
Bash
Executable File
#!/bin/bash
|
|
# WeChat-Nanobot Bridge 启动脚本
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
|
|
|
|
cd "$PROJECT_DIR"
|
|
|
|
# 加载环境变量
|
|
if [ -f ".env" ]; then
|
|
export $(cat .env | grep -v '#' | xargs)
|
|
fi
|
|
|
|
# 激活虚拟环境
|
|
if [ -d "venv" ]; then
|
|
source venv/bin/activate
|
|
fi
|
|
|
|
# 创建日志目录
|
|
mkdir -p logs
|
|
|
|
# 检查端口是否被占用
|
|
PORT=$(python3 -c "import json; print(json.load(open('config/config.json'))['server']['port'])")
|
|
if lsof -Pi :$PORT -sTCP:LISTEN -t >/dev/null 2>&1; then
|
|
echo "❌ 端口 $PORT 已被占用"
|
|
exit 1
|
|
fi
|
|
|
|
echo "🚀 启动 WeChat-Nanobot Bridge"
|
|
echo "📡 服务地址: http://localhost:$PORT"
|
|
echo "💡 按 Ctrl+C 停止服务"
|
|
echo ""
|
|
|
|
# 启动服务
|
|
exec python3 src/server.py
|