菜单

ji233
发布于 2024-09-14 / 61 阅读
0
0

StarBot之利用Overflow和NapCat部署

疑似因Linux服务器环境问题,本教程搭建的机器人不稳定,目前已在Windows的挂机宝中进行测试,稳定性明显高于Linux,后续会推出相关教程

另外本教程写的比较仓促,如果有不详细之处欢迎提出,我会酌情修改

因部分服务器会出现237错误,所以我这里提供另一种解决方案,即使用NapCat和Overflow部署

Overflow本质上是将NapCat的Onebot协议转化为了miria协议进行使用

安装java、python等过程这里不再赘述,这里Python我们将使用venv进行环境安装和管理

安装1panel

1panel是一个很好的面板,可以方便我们对NapCat服务进行管理

请参考官网安装教程,这里不再赘述

1panel官网:1Panel - 现代化、开源的 Linux 服务器运维管理面板

增加NapCat源

安装完1panel后,运行下列指令为1panel商店增加NapCat镜像部署

bash <(wget -qO- https://ghp.ci/https://raw.githubusercontent.com/Fahaxikiii/napcat-1panel/main/scripts/gitproxy.sh)

这里推荐划为1panel的计划任务,这样可以自动更新,如下图所示

安装NapCat

按下图操作安装NapCat,注意在配置界面设置机器人账号,其余可默认,这里推荐修改登录密钥

注意登录密钥不是机器人的登录密码,是你登录Web UI的密码

如因国内网络环境无法安装的,请前往容器-配置页面新增docker镜像源,在这里不提供可用镜像源地址,以防它们的失效,请诸位自行搜索

安装OverFlow

进入命令行,在任意目录,依次执行下面的指令

mkdir mcl
cd mcl
wget https://github.com/MrXiaoM/mirai-console-loader/releases/download/v2.1.2-patch1/with-overflow.zip
unzip with-overflow.zip
chmod +x mcl
./mcl -u --dry-run

如果是国内机器,github可能无法使用,请执行下面的命令

mkdir mcl
cd mcl
wget https://gh-proxy.com/https://github.com/MrXiaoM/mirai-console-loader/releases/download/v2.1.2-patch1/with-overflow.zip
unzip with-overflow.zip
chmod +x mcl
./mcl -u --dry-run

在安装完成后,通过./mcl即可运行

在本次运行中,将会提示下列错误,这是正常现象,因为我们没用启用Onebot服务

E/Onebot: ▌ 出现错误 Connection refused 或未连接 ┈━═☆

安装mcl插件

在此时,你只需要安装mirai-api-http插件即可

https://github.com/project-mirai/mirai-api-http/releases

将插件安装上去,再次运行mcl,待出现上文所述错误时Ctrl+C终止运行

然后再修改 config/net.mamoe.mirai-api-http/setting.yml

adapters:
  - http
  - ws
debug: false
enableVerify: true
verifyKey: StarBot
singleMode: false
cacheSize: 4096
persistenceFactory: 'built-in'
adapterSettings:
  ## 其中的 7827 为 StarBot 的默认连接端口,如需修改此处,请在启动 StarBot 时使用 config.set("MIRAI_PORT", 端口号) 同步修改
  http:
    host: localhost
    port: 7827
    cors: ["*"]
    unreadQueueMaxSize: 100

  ## 其中的 7827 为 StarBot 的默认连接端口,如需修改此处,请在启动 StarBot 时使用 config.set("MIRAI_PORT", 端口号) 同步修改
  ws:
    host: localhost
    port: 7827
    reservedSyncId: -1

在NapCat WebUI登录机器人账号

访问http://<ip>:6099/webui/login.html进入NapCat的WebUI,如无法访问请检查服务器安全组和防火墙配置

Token为NapCat,如果你在安装NapCat Docker时曾修改登录密钥,则填入你修改的登录密钥

登陆后点击 QR Code,扫码登录

登陆后跳转配置界面,按下图开启功能,点击保存

请留意:当重启Docker或服务器时,可能需要进入webui再次登录机器人

启动mcl

此时再回到mcl,再次执行./mcl,即可正常启动机器人

此时可测试在机器人加入的群聊发送消息,可以发现被正常监听即可

如果一条消息显示两次记录,可重启解决

利用Docker安装Redis

这部分还没写,如果想要跑,可以参考StarBot的文档直接安装Redis

使用Docker安装后续的main.py也需要对应修改Redis的链接地址

安装StarBot

新建一个starbot目录,执行

python3 -m venv starbot

如无法创建,请执行错误日志中打印出来的那条命令

另外,此命令中的python3也可能为python,请以你的实际环境为准

执行下列命令进入python虚拟环境

source ./starbot/bin/activate

执行pip安装Starbot

pip install -i https://mirrors.cloud.tencent.com/pypi/simple starbot-bilibili

将numpy降级

pip install numpy==1.24.0

后续操作即可仿照StarBot官方文档进行

请留意,如果需要一条命令执行StarBot的main.py,请使用

./starbot/bin/python3 main.py

守护进程

这部分还没写~


评论