-
-
Notifications
You must be signed in to change notification settings - Fork 216
部署流程
本项目可以连接支持 OneBot 11 标准的机器人客户端,例如 NapCatQQ 和 Lagrange 等
本项目使用正向 WebSocket 连接方式
本项目支持 docker 部署,参见Docker部署
以下以 NapCatQQ 为例
Windows 建议直接使用 NapCat 官方提供的 NapCatQQ-Desktop 启动器
Linux 建议使用 NapCat-Docker 进行部署
下面是 docker compose 部署的参考配置,请根据官方说明和你自己的情况进行修改
services:
napcat:
environment:
# 你的QQ号
ACCOUNT: 1234567890
NAPCAT_UID: 0
NAPCAT_GID: 0
# NapCat 的管理页面密码,务必设置
WEBUI_TOKEN: xxxxxxxxxxxxx
WS_ENABLE: true
# WebSocket 端口,可自行修改,确保跟本项目配置一致
WS_PORT: 8080
F2U_ENABLE: true
MESSAGE_POST_FORMAT: string
volumes:
# 部署前先创建下面三个文件夹
# mkdir QQ config logs
- ./QQ:/app/.config/QQ
- ./config:/app/napcat/config
- ./logs:/app/napcat/logs
# 某些功能需要发送本地文件,需要将本项目的 data/cache 目录也映射进去,请改成你自己的路径
- /PATH_TO_CQPS/data/cache:/PATH_TO_CQPS/data/cache
container_name: napcat
# 这里使用 host 网络模式,因为某些功能需要请求本项目在本地启动的 HTTP 服务
# 如果你不打算使用 setu 功能且希望与官方教程一样使用 bridge 模式,那么请自行补充端口映射
network_mode: host
restart: always
# 每次启动都确保镜像最新,如果不要可以去掉
pull_policy: always
image: mlikiowa/napcat-docker:latest
logging:
options:
max-size: 50m
部署完成后参考官方文档用 WebUI 进行登录和设置
Node.js 推荐版本 20
Windows 安装时请注意勾选安装 build tools
Linux 请参照此处来安装
本项目也支持使用 bun 运行,bun 是一个更快的 js 运行时和包管理器,具体安装及使用方法请看官网,若使用 bun 则无需安装 Node.js
不过本项目尚未增加 bun 专用的进程守护脚本,且不支持一键更新,另外 bun 也尚未完全兼容 Node.js 所以可能有意外发生,仅建议尝鲜使用
部署过程示例:
git clone https://github.com/Tsuk1ko/cq-picsearcher-bot.git cqps --depth=1
cd cqps
cp config.default.jsonc config.jsonc
# 安装依赖(选择下列其中一种方式即可)
## (1) 一般情况下
npm i --production
## (2) 更推荐使用 yarn
npm i -g yarn
yarn --production
## (3) 如果在国内部署,可以像这样设置使用淘宝镜像再 install
### (3.1) 使用 npm
npm config set registry https://registry.npmmirror.com --global
npm config set disturl https://cdn.npmmirror.com/binaries/node --global
npm i --production
### (3.2) 使用 yarn
npm config set registry https://registry.npmmirror.com --global
npm config set disturl https://cdn.npmmirror.com/binaries/node --global
npm i -g yarn
yarn --production
注意此处(第三行)是将 config.default.jsonc
复制一份,重命名为 config.jsonc
,然后编辑 config.jsonc
文件来配置本程序,不可以删除 config.default.jsonc
或直接对其改名
配置完成后先启动 go-cqhttp 再运行本程序
初次尝试部署建议直接使用npm run test
命令直接前台启动,可以直接看到运行日志,如果有错误能方便地查看报错日志
修改配置后无需重启,可以使用配置热重载指令
确保使用上述命令执行没有发生错误后,结束前台进程,再使用下述后台守护方式运行
# 运行
npm start
# 停止
npm stop
# 重启
npm restart
# 查看日志(平时日志也会保存在 logs 文件夹内)
npm run log
# 停止 pm2 进程
npm run kill
程序默认每隔一天检查一次更新,发现新版本会私聊 bot.admin
通知,你可以修改 bot.checkUpdate
配置项来更改检查频率或关闭自动检查更新
检查更新仅作检查,并不会自动进行更新,更新操作仍然需要手动完成
你之前用哪个包管理器就用哪个来执行安装依赖的命令,不建议 npm 与 yarn 混用
npm stop
git pull
npm i --production # 或 yarn --production
阅读更新日志,如果配置文件有变更,可根据说明和自己的需要对照config.default.jsonc
来更新你的config.jsonc
,未配置的设置项将会取config.default.jsonc
中的配置值
确认无误后启动程序
npm start
你也可以通过以下命令一键更新(会自动完成上述停止、更新、启动操作)
# 自动检测包管理器,如果含有 package-lock.json 则使用 npm,否则使用 yarn
npm run update
# 会使用 npm 安装依赖
npm run update:npm
# 会使用 yarn 安装依赖
npm run update:yarn
若需修改配置,修改完后使用配置热重载指令即可