目的:部署一个 QQ AI聊天机器人。
用到两个开源项目,NapCatQQ 和 Koishi。
NapCatQQ 实现了QQ登录,能够通过程序收发QQ消息,提供了onebot协议支持。
Koishi 是个机器人框架,具备丰富插件系统。
部署
注意docker hub加速域名用x.com隐藏代替了,需要请自行搭建,参考:Cloudflare反代docker hub
1 | docker pull x.com/mlikiowa/napcat-docker:latest |
启动 koishi 容器,映射容器5140到888端口
提前创建好/root/koishi_data目录。
1 | docker run -d -p 999:5140 -v /root/koishi_data:/koishi --name koishi --mac-address=02:42:ac:11:00:98 koishijs/koishi:latest |
查看容器运行输出内容
docker logs koishi
浏览器访问999端口,通过koishi web控制台进行配置。
在 插件配置-market,配置插件市场和插件npm源。
依赖管理全部更新。
配置auth插件,设置管理员密码。
安装插件:
1 | chatluna |
koushi插件发布:
1 | 1. 根目录执行 npm run build |
启动 napcat 容器,把容器6099端口映射到本机8087端口
创建目录:
1 | /root/napcat/config/ |
运行容器:
1 | docker run -d \ |
查看napcat输出内容,扫码登录。
1 | docker logs napcat |
打开 http://服务器IP:8087/webui/#/webui 使用token登录。(启动后可在启动日志中看到形如 [WebUi] Login Token is xxxx 的token信息)
在网络配置,配置koishi和http。
在 /root/napcat/config/webui.json 可以配置登录token。


参照 https://napneko.github.io/use/integration#koishi 连接到koishi。
可通过IP:8090来调用 https://napneko.github.io/develop/api#napcat-api 的API
升级版本
1 | docker stop napcat |
docker常用命令
1 | 列出正在运行的容器 |