Files
WPSBot/STARTUP_GUIDE.md
2025-10-29 12:06:18 +08:00

4.2 KiB

WPS Bot Game 启动方式说明

🚀 多种启动方式

1. 命令行参数启动(推荐)

基本启动

python app.py --webhook-url "https://xz.wps.cn/api/v1/webhook/send?key=your_key"

自定义参数启动

python app.py \
  --webhook-url "https://xz.wps.cn/api/v1/webhook/send?key=your_key" \
  --host 0.0.0.0 \
  --port 8080 \
  --workers 1 \
  --log-level debug

短参数形式

python app.py -w "https://xz.wps.cn/api/v1/webhook/send?key=your_key" -p 8080 -l debug

2. 使用启动脚本

Linux/Mac

# 基本启动
./start.sh -w "https://xz.wps.cn/api/v1/webhook/send?key=your_key"

# 自定义参数
./start.sh -w "your_webhook_url" -p 8080 -l debug

# 查看帮助
./start.sh --help

Windows

REM 基本启动
start.bat -w "https://xz.wps.cn/api/v1/webhook/send?key=your_key"

REM 自定义参数
start.bat -w "your_webhook_url" -p 8080 -l debug

REM 查看帮助
start.bat --help

3. 环境变量启动

设置环境变量

# Linux/Mac
export WEBHOOK_URL="https://xz.wps.cn/api/v1/webhook/send?key=your_key"
export HOST="0.0.0.0"
export PORT="8080"
export LOG_LEVEL="debug"

# Windows
set WEBHOOK_URL=https://xz.wps.cn/api/v1/webhook/send?key=your_key
set HOST=0.0.0.0
set PORT=8080
set LOG_LEVEL=debug

启动应用

python app.py

4. 配置文件启动

创建配置文件

# 复制配置模板
cp config.env.example config.env

# 编辑配置文件
nano config.env

配置文件内容

WEBHOOK_URL=https://xz.wps.cn/api/v1/webhook/send?key=your_key
HOST=0.0.0.0
PORT=8080
WORKERS=1
LOG_LEVEL=debug

启动应用

python app.py

📋 参数说明

参数 短参数 默认值 说明
--webhook-url -w WPS Webhook URL
--host -H 0.0.0.0 服务器主机地址
--port -p 11000 服务器端口
--workers 1 工作进程数
--log-level -l info 日志级别

🔧 生产环境部署

使用systemd服务

# 编辑服务文件
sudo nano /etc/systemd/system/wps-bot.service

# 服务文件内容
[Unit]
Description=WPS Bot Game
After=network.target

[Service]
Type=simple
User=your_user
WorkingDirectory=/path/to/WPSBotGame
ExecStart=/usr/bin/python3 app.py --webhook-url "your_webhook_url" --port 11000
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

使用Docker

FROM python:3.10-slim

WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt

COPY . .

CMD ["python", "app.py", "--webhook-url", "your_webhook_url"]

使用Nginx反向代理

server {
    listen 80;
    server_name your-domain.com;

    location / {
        proxy_pass http://127.0.0.1:11000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

🐛 故障排除

1. 端口被占用

# 查看端口占用
netstat -tlnp | grep :11000

# 杀死占用进程
sudo kill -9 PID

# 或使用其他端口
python app.py --port 8080

2. 权限问题

# 给启动脚本执行权限
chmod +x start.sh

# 检查文件权限
ls -la start.sh

3. 依赖问题

# 检查Python版本
python --version

# 安装依赖
pip install -r requirements.txt

# 检查依赖
python -c "import fastapi, uvicorn"

4. 网络问题

# 测试Webhook URL
curl -X POST "your_webhook_url" \
  -H "Content-Type: application/json" \
  -d '{"msg_type": "text", "content": {"text": "test"}}'

# 检查防火墙
sudo ufw status
sudo ufw allow 11000

📊 监控和日志

查看日志

# 实时查看日志
tail -f /var/log/wps-bot.log

# 查看系统日志
journalctl -u wps-bot -f

# 查看错误日志
grep ERROR /var/log/wps-bot.log

健康检查

# 检查服务状态
curl http://localhost:11000/health

# 检查统计信息
curl http://localhost:11000/stats

性能监控

# 查看进程状态
ps aux | grep python

# 查看内存使用
free -h

# 查看磁盘使用
df -h