• 【2022.04.19】Dockercompose一键安装mirai,搭建QQ机器人最快方法


    先用官方的脚本安装下docker

    curl -sSL https://get.docker.com/ | sh
    

    安装docker-compose

    curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    chmod +x /usr/local/bin/docker-compose
    
    然后验证一下版本号,有的话就安装成功了
    docker-compose --version
    

    安装可视化的docker来管理其他docker

    docker run -d -p 9000:9000 \
        --restart=always \
        -v /var/run/docker.sock:/var/run/docker.sock \
        --name prtainer \
        portainer/portainer
    

    在文件目录下新建docker-compose.yml文件

    nano docker-compose.yml
    

    在文件中填入以下内容并保存

    version: '3'
    services:
      novnc:
        restart: always
        image: theasp/novnc:latest
        environment:
          DISPLAY_WIDTH: 425
          DISPLAY_HEIGHT: 900
          RUN_XTERM: 'no'
        ports:
          - 11180:8080
      cqhttp:
        restart: always
        image: nanahira/mirai-cqhttp:x
        ports:
          - '6700:6700'
        volumes:
          - ./data:/usr/src/app/data
          - ./config:/usr/src/app/config
          - ./bots:/usr/src/app/bots
          - ./plugins:/usr/src/app/plugins
        stdin_open: true
        environment:
          DISPLAY: novnc:0.0
          QQ_ID: 你的QQ
          QQ_PASS: 你的密码
          WS_PORT: 6700
          WS_TOKEN: 1234567890
          TZ: Asia/Shanghai
    

    运行docker

    docker-compose up
    

    运行成功有如下显示

    image-20220419132537839

    进入novnc获取验证码

    http://你设定的ip:11180/vnc.html

    连接上后获得画面,但是现在docker里面没有安装中文字体

    登录手机QQ

    在novnc界面获取链接,会在剪贴板显示,将这个链接发送给要登陆的手机QQ(扫描验证码啥的

    image-20220419132641271

    用已经登陆的机器人账号打开它

    image-20220419133409020

    ctrl+c中止这个docker,然后重新docker-compose up,即登陆成功

    image-20220419133228670

    那么这样子机器人就搭好了

    安装基本的插件

    这里要安装两个插件,找到最新release并下载jar包

    • chat-command: 允许在聊天环境通过以 "/" 起始的消息执行指令
    • mirai-api-http:提供 HTTP 支持,允许使用其他编程语言的插件

    安装前要停止docker,进入docker可视化工具Portainer

    http://服务器ip:9000/#/containers

    image-20220419134708705

    将这两个文件上传到plugins,如果无法上传,那么在mirai目录下使用命令

    意思为你可以用这个账号对这个目录下的文件为所欲为

    chown -R 你的用户名 *
    

    image-20220419140313754

    上传完成后,重新docker-compose up,以下命令代表成功加载插件

    第一次加载会在config目录下生成配置文件

    image-20220419140427314

    接下来要做的就是再次停止这个docker,去编辑config目录下的文件

    编辑配置文件

    新增管理员

    找到PermissionService.yml文件,并编辑它

    image-20220419140951827

    可以看到现在只有控制台有权限

    image-20220419141128858

    *:*的意思是,所有插件的所有功能

    在下面添加管理员(注意要和上一行匹配

    其中u就是个体,user的意思,也可以添加群来管理,前缀是g

    image-20220419141257425

    保存并退出,那么基本的设置就已经解决了

    http协议设置

    编辑http插件目录下的setting文件

    image-20220419141623456

    因为我们是在docker中搭建的,所以host不能为localhost,要改为0.0.0.0

    verifyKey和port要和docker-compose.yml文件中的匹配

    ## 配置文件中的值,全为默认值
    
    ## 启用的 adapter, 内置有 http, ws, reverse-ws, webhook
    adapters:
      - http
      - ws
    
    ## 是否开启认证流程, 若为 true 则建立连接时需要验证 verifyKey
    ## 建议公网连接时开启
    enableVerify: true
    verifyKey: 1234567890
    
    ## 开启一些调式信息
    debug: false
    
    ## 是否开启单 session 模式, 若为 true,则自动创建 session 绑定 console 中登录的 bot
    ## 开启后,接口中任何 sessionKey 不需要传递参数
    ## 若 console 中有多个 bot 登录,则行为未定义
    ## 确保 console 中只有一个 bot 登陆时启用
    singleMode: false
    
    ## 历史消息的缓存大小
    ## 同时,也是 http adapter 的消息队列容量
    cacheSize: 4096
    
    ## adapter 的单独配置,键名与 adapters 项配置相同
    adapterSettings:
      ## 详情看 http adapter 使用说明 配置
      http:
        host: 0.0.0.0
        port: 6700
        cors: ["*"]
      
      ## 详情看 websocket adapter 使用说明 配置
      ws:
        host: 0.0.0.0
        port: 6700
        reservedSyncId: -1
    

    保存并退出

    重新docker-compose up

    这下基本上全好了

    image-20220419142229213

    以上就是mirai基本操作

  • 相关阅读:
    LeetCode 43 字符串相乘
    HDU 1031 Design T-Shirt
    HDU 1728 逃离迷宫
    HDU 1285 确定比赛名次
    HDU 1116 Plays on words
    HDU 1195 Open the lock
    HDU 1072 Nightmare
    HDU 1272 小希的迷宫
    HDU 1273 漫步森林
    HDU 1269 迷宫城堡
  • 原文地址:https://www.cnblogs.com/mokou/p/16164839.html
Copyright © 2020-2023  润新知