🚀 框架部署教程
从零开始部署陌城qqbot框架,大约 10 分钟即可完成
📌 部署架构概览
陌城qqbot框架基于 Python + OneBot v11 协议 构建,部署需要两部分:
🔌 适配器类型
陌城qqbot框架支持两种适配器接入方式,可在 WebUI「适配器管理」页面同时配置多个:
功能完整(群管/禁言/踢人等),但有封号风险
功能受限(被动回复为主,主动消息有配额)
环境准备
部署前请确保服务器/电脑满足以下环境要求:
下载框架
从下载页获取最新版本压缩包 (推荐下载正式版,已包含预构建的 WebUI,无需额外安装 Node.js)。
将压缩包解压到任意目录,例如:
# Windows
D:\qqbot\
# Linux
/opt/qqbot/
启动框架
🪟 Windows 系统
双击目录中的 start.bat 文件即可,脚本会自动完成以下操作:
- ✅ 检测 Python 环境
- ✅ 创建虚拟环境(venv)
- ✅ 安装依赖库(使用清华源加速)
- ✅ 检查 / 构建 WebUI(若已预构建则跳过)
- ✅ 启动框架
🐧 Linux / macOS 系统
赋予执行权限后运行启动脚本:
cd /opt/qqbot
chmod +x start.sh
./start.sh
🔧 手动启动(高级)
若脚本启动失败,可手动执行:
cd /opt/qqbot
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/macOS
source venv/bin/activate
pip install -r requirements.txt
python main.py
config/ 目录自动生成默认配置文件
(config.json 和 .env),无需手动创建。
部署 OneBot 协议端
框架本身无法直接登录 QQ,需要一个 OneBot 协议端来收发消息。推荐以下几种实现:
配置协议端连接
框架默认使用 WebSocket 客户端模式(框架主动连接协议端)。需在协议端开启 正向 WebSocket 服务,然后在框架的 WebUI 中填写连接地址。
ws://127.0.0.1:3001
(若协议端与框架部署在同一服务器)。若部署在不同服务器,请填写协议端服务器的 IP 和端口。
QQ 官方机器人适配器(可选)
如果你想使用腾讯官方机器人接口(合规无封号风险),请按以下步骤操作。此步骤可选,框架支持同时配置 OneBot 和官方两种适配器。
📝 注册 QQ 开放平台账号
- 访问 QQ 开放平台,使用 QQ 号登录
- 完成开发者认证(个人或企业)
- 点击「创建机器人」,填写机器人信息并提交审核
- 审核通过后,在机器人管理后台获取以下凭据:
- AppID:机器人应用 ID
- AppSecret:机器人应用密钥
- Token:WebSocket 鉴权 Token(可选)
⚙️ 配置机器人权限
在机器人管理后台的「权限管理」页面,开启以下权限:
- ✅ 群@机器人消息(GROUP_AT_MESSAGE_CREATE)
- ✅ C2C 消息(C2C_MESSAGE_CREATE)
- ✅ 发送群消息
- ✅ 发送 C2C 消息
🔌 在框架中添加适配器
框架启动后,打开 WebUI 管理后台,进入「连接配置 → 适配器管理」页面:
- 点击「新增适配器」按钮
- 填写名称(如「官方机器人」)
- 类型选择「QQ 官方机器人」
- 填写 AppID、AppSecret、Token
- 点击「确定」保存
- 点击「测试」按钮验证连接是否正常
配置框架
框架启动后,打开浏览器访问 WebUI 管理后台:
http://127.0.0.1:8081
在 WebUI 中完成以下配置:
- OneBot 连接配置 - 填写协议端的 WebSocket 地址和 Access Token
- 机器人配置 - 设置超级用户(QQ 号)、昵称、命令前缀
- 群设置 - 配置每个群的开关、插件启用状态
- 菜单管理 - 自定义菜单标题、触发词、分类
config.json 的 bot.superusers 数组中添加你的 QQ 号,
即可拥有最高管理权限。
连接测试
完成配置后,按以下步骤验证部署是否成功:
- ✅ 控制台输出
WebSocket 已连接- 协议端连接成功 - ✅ 控制台输出
Bot 已登录: xxxxxxx- QQ 账号登录成功 - ✅ WebUI 首页显示 在线 状态 - 框架运行正常
- ✅ 在 QQ 群中发送
菜单- 机器人回复菜单 - 功能完全可用
端口说明
808080813001后台常驻运行(Linux)
Linux 服务器推荐使用 systemd 或 screen 让框架在后台持续运行:
方案一:screen(简单)
# 创建后台会话
screen -S qqbot
# 启动框架
cd /opt/qqbot && ./start.sh
# 按 Ctrl+A 然后按 D 脱离会话(框架继续运行)
# 重新连接会话
screen -r qqbot
方案二:systemd(推荐生产环境)
创建服务文件 /etc/systemd/system/qqbot.service:
[Unit]
Description=MoCheng QQBot Framework
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/qqbot
ExecStart=/opt/qqbot/venv/bin/python /opt/qqbot/main.py
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
启动并设置开机自启:
systemctl daemon-reload
systemctl start qqbot
systemctl enable qqbot
# 查看运行状态
systemctl status qqbot
# 查看日志
journalctl -u qqbot -f
目录结构
qqbot/
├── main.py # 主入口
├── start.bat # Windows 一键启动
├── start.sh # Linux/macOS 启动脚本
├── requirements.txt # Python 依赖
├── config_manager.py # 配置管理
├── log_manager.py # 日志管理
├── core/ # 核心代码
│ ├── app.py # 应用主类
│ ├── version.py # 版本号
│ ├── plugin_loader.py # 插件加载器
│ ├── menu_registry.py # 菜单注册
│ ├── permission.py # 权限管理
│ └── onebot/ # OneBot 协议实现
├── plugins/ # 插件目录
│ ├── group_admin.py # 群管理
│ ├── group_ai_chat.py # AI 对话
│ ├── group_checkin.py # 签到
│ ├── group_points.py # 积分
│ └── ... # 更多插件
├── webui/ # WebUI 管理后台
│ ├── app.py # WebUI 服务
│ └── frontend/dist/ # 前端构建产物
├── config/ # 配置文件
│ ├── config.json # 主配置
│ ├── .env # 环境变量
│ └── data/ # 数据存储
└── venv/ # 虚拟环境(自动创建)
常见问题
Add Python to PATH。下载地址:python.orgpython -m pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple8081 端口是否被占用或被防火墙拦截。正式版压缩包已预构建 WebUI,无需安装 Node.js。若使用测试版且未构建前端,需安装 Node.js 18+ 后重新运行 start.bat。ws://127.0.0.1:3001);4) 确认 Access Token 一致(若未设置则留空)。D:\qqbot\ 或 /opt/qqbot/。config/ 目录)。数据文件位于 config/data/,覆盖时保留即可,不会丢失配置。config/config.json,在 bot.superusers 数组中添加 QQ 号:"superusers": ["123456789"]plugins/ 目录,框架启动时会自动加载。插件需继承基础插件类并注册命令处理器,参考 plugins/group_admin.py 的实现。