社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

3 分钟 Docker 部署 NapCat!QQ 消息实时接收,二次开发必看!

NASBox • 4 月前 • 271 次点击  
如有修改或改动,关注文章底部留言!
教程对你有用,可以 “点赞” 和 “打赏”支持 ~



 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 




 

 

 

 




NapCat:

一个致力于打破 QQ 机器人开发壁垒的开源项目。利用 NTQQ 的底层能力, 构建了一个无需 GUI 即可在服务器端稳定运行的 Headless 框架。无论是个人开发者还是企业用户,NapCat 都能提供开箱即用的 OneBot 11 协议支持, 助您快速将创意转化为现实。


基于 TypeScript 构建的 Bot 框架,通过相应的启动器或者框架,主动调用 QQ Node 模块提供给客户端的接口,实现 Bot 的功能。


NapCat 与很多框架都有本质性的区别:

  • • 协议端相比,并非完全自己实现 QQ SendMsg 这种功能,而是主动调用客户端存在的功能。
  • • Hook 端相比,NapCat 可以完全自身引导 QQ 程序的启动,而非借助客户端启动流程,所以 API 所有权几乎完全拥有,不需要 Hook。
  • • Electron IPC Hook 端对比,NapCat 本身并不依赖 Electron 与注入框架,调用来源 IPC 更下层封装的 Node 模块,也许甚至脱离 QQ 主程序运行。


安装

Docker Compose

services:
napcat:
    image: mlikiowa/napcat-docker:latest
    container_name: napcat
    ports:
      - 3000:3000
      - 3001:3001
      - 6099:6099
    environment:
      - NAPCAT_UID=0
      - NAPCAT_GID=0
    volumes:
      - ./QQ:/app/.config/QQ
      - ./config:/app/napcat/config
      - ./plugins:/app/napcat/plugins
    restart: always

参数说明(更多参数建议去看文档)

:::
/app/.config/QQ(路径,可选):QQ 持久化数据路径

/app/napcat/config(路径,可选):NapCat 配置文件路径

/app/napcat/plugins(路径,可选):NapCat 插件目录路径

:::

使用

浏览器中输入 http://NAS的IP:6099 就能看到界面


这里提示需要输入 Token,需要去查看容器日志信息


滑动到最顶的二维码,上面就能看到 token 信息


下面需要登录 QQ 账号,手机扫描就行(最好用小号登录,电脑客户端会被挤下线录)


能看到个人信息说明就登录成功了


日志能看到 QQ 接收到的所有消息


支持各种网络配置,开发者可以对接进行通信调试


功能挺丰富的,我就不一个个介绍了


总结

本篇教程就不深入讲 NapCat 的具体配置了,因为它本身只是打通 QQ 通信的中间件。目前只要把它部署好,成功登进 QQ 账号,能接收到聊天信息就行了。实际用的时候还需要搭配其他应用,比如之前讲过的 AstrBot 多平台聊天机器人,还有后面会出一期 NekroAgent AI 代理框架。

综合推荐:⭐⭐⭐(适合二次开发,作为其他应用的通信组件)

使用体验:⭐⭐⭐(功能丰富,提供直观的图形化操作界面)

部署难易:⭐⭐(简单)


 




 

 

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/194493