koishi + Lagrange.OneBot 部署QQ机器人

记录一下我在新的小鸡上的搭建过程
参考 QQ/QQ 频道 登录指南Lagrange 文档koishi 文档

1、安装 koishi

docker run -p 5140:5140 koishijs/koishi

如果你需要持久化,请使用 -v /some/place:/koishi 来映射 Koishi 的文件。
如果需要更正时区,请使用 -e TZ=Asia/Shanghai 来设置时区。

docker run -p 5140:5140 -v /var/koishi-data:/koishi -e TZ=Asia/Shanghai koishijs/koishi

访问 koishi

http://宿主机地址:5140

2、更新依赖

先点击左侧边栏的 依赖管理,然后右上角先点 小火箭 在点 更新全部依赖

4、进入插件市场搜索 echo 插件,安装

左侧边栏进入沙盒,添加一个用户,发送 帮助,测试一下功能

5、下载运行 Lagrange.OneBot

建一个文件夹,执行下面代码,系统架构不一样的可以去 github 找对应版本的下载地址

wget https://github.com/LagrangeDev/Lagrange.Core/releases/download/nightly/Lagrange.OneBot_linux-x64_8.0.zip

// 解压
unzip Lagrange.OneBot_linux-x64_8.0.zip

cd publish/

# 可执行权限(可选)
chmod +x ./Lagrange.OneBot
# 运行
./Lagrange.OneBot

6、配置文件

第一次运行时, 会在同级目录下自动生成默认的 appsettings.json 配置文件, 你需要正确修改配置文件以设置 Lagrange
在配置文件按需修改后(推荐使用扫码登录), 在命令行中按任意键, Lagrange 将正式运行在同一文件夹下会出现一张登录二维码图片 qr-0.png, 在二维码过期前尽快使用手机 QQ 扫码连接

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",  // 提 Issue 时请切换到 Trace
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information",
    },
  },
  "SignServerUrl": "https://sign.lagrangecore.org/api/sign",
  "Account": {
    "Uin": 0,  // Uin 填写 0 以使用扫码连接
    "Password": "",  // 不填写密码以使用扫码连接
    "Protocol": "Linux",  // 使用 Linux 协议
    "AutoReconnect": true,
    "GetOptimumServer": true,
  },
  "Message": {
    "IgnoreSelf": true,  // 忽略 Bot 自身的消息
    "StringPost": false,
  },
  "QrCode": {
    "ConsoleCompatibilityMode": false,
  },
  "Implementations": [  // 服务实现 支持多链接
    {
      "Type": "ReverseWebSocket",
      "Host": "127.0.0.1",
      "Port": 8080,
      "Suffix": "/onebot/v11/ws",
      "ReconnectInterval": 5000,
      "HeartBeatInterval": 5000,
      "HeartBeatEnable": true,
      "AccessToken": "",
    },
    {
      "Type": "ForwardWebSocket",
      "Host": "127.0.0.1",
      "Port": 8081,
      "HeartBeatInterval": 5000,
      "HeartBeatEnable": true,
      "AccessToken": "",
    },
  ],
}

7、安装 adapter-onebot 插件

回到 koishi 的插件商店,搜索安装 adapter-onebot 插件
安装完成会自动进入插件管理页面,右键 adapter 分组,选择添加插件,找到刚刚安装的 adapter-onebot 插件,添加。
image

8、配置 adapter-onebot 插件

39 个赞

常规话题软件分享

#QQ机器人添加

感谢分享!mark

8 个赞

我一直不太懂用qq机器人来做啥,可能是我没有使用场景吧

5 个赞

感谢分享!!

5 个赞

接ai,还有一些有用的插件,挺好玩的

4 个赞

我是在朋友的群里提供一些比较方便的功能和推送一起玩的游戏更新之类的

3 个赞

mark

4 个赞

感谢分享mark一下

4 个赞

有意思,Mark一下

4 个赞

Mark

4 个赞

太强了!

3 个赞

我现在转玩napcat了

3 个赞

搭建成功,提供我整理的docker-compose,两个容器在同一个网络中,ws服务器只需要填写lagrange的hostname,比如ws://qq-la:8081,当然你需要改一下lagrange配置文件里的监听host

分为两个文件,第二个

version: "3"
services:
  lagrange.onebot:
    #ports:
    #  - 8081:8081
    volumes:
      - ./data:/app/data
    environment:
      - UID=改成你的ID 终端里敲id得到
      - GID=改成你的ID
    image: ghcr.io/lagrangedev/lagrange.onebot:edge
    networks:
      - qqbot
    mem_limit: 256m
    hostname: qq-la

networks:
  qqbot:
    external: true
    name: qqbot

第一个,首先启动这个

version: "3"
services:
  koishi:
    container_name: Koishi
    hostname: koishi
    ports:
      - 5140:5140
    volumes:
      - ./data:/koishi
    image: koishijs/koishi
    deploy:
      resources:
        limits:
          memory: 1G
    networks:
      - qqbot
    environment:
      - TZ=Asia/Shanghai

networks:
  qqbot:
    name: qqbot
2 个赞

强,佬!

我也写了一个qq机器人的工具感兴趣的可以部署个

1 个赞

感谢分享

1 个赞

这个强,我成功了

1 个赞

按照docker部署了一下,一直提示二维码过期是啥情况