选用 NapCat
本篇介绍选择 napcat 协议后如何进行配置并启动
配置环境变量
在 compose.yaml
文件的 napcat 部分,有设置一些环境变量,需要进行配置:
yaml
napcat:
image: mlikiowa/napcat-docker:v4.5.20
restart: always
environment:
- ACCOUNT=${ACCOUNT}
- NAPCAT_UID=${UID}
- NAPCAT_GID=${GID}
volumes:
- ./bot/.config/QQ:/app/.config/QQ
- ./bot/napcat/config:/app/napcat/config
depends_on:
- ws
profiles: [napcat]
方法1 - 使用外部的 .env 文件
如果不存在 .env
文件则手动创建,在 compose.yaml
同目录下;内容如下:
sh
ACCOUNT="2496242409"
UID="1000"
GID="1000"
ACCOUNT
为机器人 qq 号UID
和GID
固定为 1000 即可
方法2 - 直接修改 compose.yaml 文件
yaml
environment:
- ACCOUNT=2496242409
- NAPCAT_UID=1000
- NAPCAT_GID=1000
配置 WebSockets
进入 bot/napcat/config
目录,如果没有就手动创建。然后新建 onebot11_2496242409.json
文件,文件内容如下:
json
{
"network": {
"httpServers": [
{
"name": "http-server",
"enable": false,
"port": 3000,
"host": "",
"enableCors": true,
"enableWebsocket": true,
"messagePostFormat": "array",
"token": "",
"debug": false
}
],
"httpSseServers": [],
"httpClients": [],
"websocketServers": [
{
"name": "websocket-server",
"enable": false,
"host": "",
"port": 3001,
"messagePostFormat": "array",
"reportSelfMessage": true,
"token": "",
"enableForcePushEvent": true,
"debug": false,
"heartInterval": 60000
}
],
"websocketClients": [
{
"name": "websocket-client-0",
"enable": true,
"url": "ws://ws:8000/qqbot",
"messagePostFormat": "array",
"reportSelfMessage": true,
"reconnectInterval": 10000,
"token": "",
"debug": false,
"heartInterval": 30000
}
]
},
"musicSignUrl": "",
"enableLocalFile2Url": false,
"parseMultMsg": true
}
- 主要就是
websocketClients
那一段,文件内容无需修改 reportSelfMessage
含义是是否接收机器人自己发送的消息- 文件名
onebot11_2496242409.json
中的数据为机器人 qq 号,需要修改
启动
sh
docker compose --profile napcat up # 前台运行
docker compose --profile napcat up -d # 后台运行
docker compose --profile napcat down # 关闭