AI摘要

宝塔11上用Docker分装AstrBot与NapCat,先同建bot-network解决容器互通,再配WebSocket与aiocqhttp适配器,扫码登录小号即可把QQ接入AI,全程避坑要点详录。
本文适用于在 宝塔面板 11 环境下,使用 Docker 容器分别部署 AstrBot 和 Napcat,从而实现将个人 QQ 号接入 AI 机器人的场景。
请注意:通过 NapCat 使用 QQ 协议存在一定风控风险,请谨慎操作,建议使用小号测试。

介绍

AstrBot 是一个易于上手的多平台聊天机器人及开发框架。通过它,你能够在多种消息平台上部署一个支持大语言模型(LLM)的聊天机器人。并以此实现但不限于 AI 知识库问答、角色扮演、群聊管理、LLM Agent 等功能。它有如下特性

部署步骤

1.部署 AstrBot

1.登录宝塔面板,进入 Docker 管理页面。
2.在“应用商店”中搜索 AstrBot,点击安装即可。

2.部署 NapCat

AstrBot 安装完成后,回到 Docker 的“容器”页面,点击 创建容器 → 命令创建

在弹出的窗口中输入以下命令:

docker run -d --name napcat -p 6099:6099 -p 16530:16530 -v /home/napcat/config:/app/config --restart=always napcat/napcat:latest

点击“执行命令”,等待 NapCat 拉取镜像并启动完成。

配置步骤

1.登录 QQ

注意:新注册的 QQ 号不要立刻接入,容易触发风控。

NapCat 启动后,我们需要查看容器日志以获取登录二维码和管理面板地址。

在容器列表中找到 napcat 容器,点击右侧“更多”→“日志”

日志中会显示一个“二维码解码 URL”,复制该链接。打开草料二维码将刚才的 URL 粘贴进去,生成二维码图片。

用你要接入的 QQ 号扫描该二维码,并在手机上确认登录。

2.进入 NapCat 管理面板

在浏览器中访问:

http://你的服务器IP:6099/webui

Token 输入 napcat 即可进入管理后台。如果之前扫码登录成功,在“基础信息”页面应该能看到你的 QQ 号信息。

3. 添加 WebSocket 客户端(关键步骤)

这里有一个容易卡住的点:由于 AstrBot 和 NapCat 分别运行在不同的 Docker 容器中,默认情况下两个容器网络不互通,无法直接建立 WebSocket 连接。

解决方案:将两个容器加入同一个 Docker 网络。
在宝塔 Docker 页面,进入“网络”选项卡,点击“添加网络”
网络名称可随意填写(例如 bot-network),点击添加。

回到“容器”页面,找到 napcat 容器,点击“管理”→“容器网络”
选择刚创建的 bot-network,点击“加入网络”,并移出其他网络,确保该容器只属于这个新建的网络。

对 AstrBot 容器重复上述操作,同样将其加入 bot-network 并移出原有网络。

记录 AstrBot 容器 在 bot-network 中的 IPv4 地址(在容器网络管理页面可见)。

4.配置 WebSocket 连接

在 NapCat 管理面板中,进入 网络配置 → 新建 → WebSockets 客户端

填写以下信息:

  • 名称:可自定义,如 AstrBot_WS
  • 地址:填写上一步获取的 AstrBot 容器 IP
  • 端口:8080
  • Token:留空
  • 启用:勾选

点击保存。

注意:这里的 IP 是容器在内网中的地址,不要填写服务器公网 IP。

2. 配置 AstrBot

配置如下:

  • 名称:可自定义,如 NapCat_QQ
  • 监听地址:0.0.0.0
  • 监听端口:8080
  • Token:留空

点击保存。

设置管理员

进入 配置 → 其他配置,在 管理员 ID 中填写你的 QQ 号(不是机器人的 QQ 号)。

记得点击右下角“保存”,系统会自动重启并应用配置。

完成验证

回到 AstrBot 的 控制台 页面,如果看到类似以下日志:

aiocqhttp(OneBot v11) 适配器已连接。

说明 AstrBot 和 NapCat 已成功连接,机器人已上线。

后续建议

更多功能配置可参考官方文档
遇到问题可以在GitHub Issues中搜索或提问,社区氛围很好,通常能得到解答。
如果部署中遇到其他问题,也欢迎在评论区留言交流。

如果觉得我的文章对你有用,请随意赞赏
END
本文作者:
文章标题:宝塔部署AstrBot及Napcat防踩坑教程
本文地址:https://www.hh2xx.cn/archives/444/
版权说明:若无注明,本文皆HH の Blog's原创,转载请保留文章出处。