先用官方的脚本安装下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

运行成功有如下显示

进入novnc获取验证码

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

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

登录手机QQ

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

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

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

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

安装基本的插件

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

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

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

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

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

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

chown -R 你的用户名 *

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

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

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

编辑配置文件

新增管理员

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

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

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

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

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

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

http协议设置

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

因为我们是在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

这下基本上全好了

以上就是mirai基本操作

【2022.04.19】Docker-compose一键安装mirai,搭建QQ机器人最快方法的更多相关文章

  1. Docker Compose 一键部署LNMP

    Docker Compose 一键部署LNMP 目录结构 [root@localhost ~]# tree compose_lnmp/ compose_lnmp/ ├── docker-compose ...

  2. Docker Compose 一键部署Nginx代理Tomcat集群

    Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...

  3. Docker Compose 一键部署多节点爬虫程序

    Docker Compose 一键部署多节点爬虫程序 目录结构 [root@localhost ~]# tree compose_crawler/ compose_crawler/ ├── cento ...

  4. Mirai框架qq机器人教程

    Mirai框架qq机器人教程 0.前言 1. 安装Java 2.安装Mirai启动器 3.下载IDEA或其他编译器 4.创建mirai-console插件项目 4.1 通过git创建 4.2 通过插件 ...

  5. Mirai框架qq机器人教程 新版

    Mirai框架qq机器人教程 新版 前言 资料列表 1.准备 i. 配置java环境 ii. 配置IDE iii. 下载mirai-console-loader(mcl)作为启动器 2.创建mirai ...

  6. Ubuntu10.04中间Leach协议一键安装

    半天后,尝试,引用网络上的零散资源,成品博客Leach协议ubuntu10.04在安装(12.04也可以在右侧安装,然而,实施效果的不,求解决~~),并制作了补丁. 一个关键的安装步骤如下面: 1.在 ...

  7. Docker Compose 介绍安装

    Compose介绍 Compose是一个定义和管理多容器的工具,也是一种容器编排工具,前身是Pig,使用Python语言编写.使用Compose配置文件描述多个容器应用的架构,biubiu使用什么镜像 ...

  8. 26. docker compose 的安装 和 基本使用

    1. 安装 docker compose https://docs.docker.com/compose/install/  选择linux 即可 sudo curl -L "https:/ ...

  9. 手把手教你 Docker Compose的安装和使用

    一.Docker Compose是什么? Docker Compose是一个工具,用于定义和运行多容器应用程序的工具: Docker Compose通过yml文件定义多容器的docker应用: Doc ...

随机推荐

  1. tensorflow2.4与目标检测API在3060显卡上的配置安装

    目前,由于3060显卡驱动版本默认>11.0,因此,其不能使用tensorflow1版本的任何接口,所以学习在tf2版本下的目标检测驱动是很有必要的,此配置过程同样适用于任何30系显卡配置tf2 ...

  2. 4、传统三层架构与DDD分层架构

    4.传统三层架构与DDD分层架构 模型是抽象的 现实是形象的 技巧是重要的 思想是永恒的 从传统三层架构与DDD分层架构的编程演变其实是思想的演变. 传统三层架构,即用户界面层UI.业务逻辑层BAL. ...

  3. STM32芯片命名规则 | STM32大中小容量芯片之间的差别

    1. STM32命名规则 STM32F105和STM32F107互连型系列微控制器之前,意法半导体已经推出STM32基本型系列.增强型系列.USB基本型系列.增强型系列:新系列产品沿用增强型系列的72 ...

  4. docker-compose + nginx部署前后端分离的项目

    安装docker 安装必要的系统工具 # 更新yum工具 yum update -y # 安装必要的工具 yum install -y yum-utils device-mapper-persiste ...

  5. 发现程序美----while+for冒泡实现的

    思想记录: 每一轮回的冒泡都将产生一个最大值,其后每次循环次数都将少一次,因为每次都会确定一个最大值. private void method(){ int[] list = {10,7,8,4,7, ...

  6. notify()和 notifyAll()有什么区别?

    当一个线程进入 wait 之后,就必须等其他线程 notify/notifyall,使用 notifyall,可 以唤醒所有处于 wait 状态的线程,使其重新进入锁的争夺队列中,而 notify 只 ...

  7. MySQL 如何优化 DISTINCT?

    DISTINCT 在所有列上转换为 GROUP BY,并与 ORDER BY 子句结合使用. SELECT DISTINCT t1.a FROM t1,t2 where t1.a=t2.a;

  8. 攻防世界杂项MISCall

    MISCall 下载下来是一个附件但是不清楚他是个什么东西我先拉入kali看看 发现是一个tar包不过这个包我们需要使用以下的指令来解压 tar -xjvf d02f31b893164d56b7a8e ...

  9. WebView的一些简单用法

    一直想写一个关于 WebView 控件的 一些简单运用,都没什么时间,这次也是挤出时间写的,里面的一些基础知识就等有时间再更新讲解一下,今天就先把项目出来做一些简单介绍,过多的内容可以看我的源码,都传 ...

  10. 前端面试题整理——webpack相关考点

    webpack是开发工具,面试考点重点在配置和使用,原理理解不需要太深. 一.基本配置 1.拆分配置和merge 将公共配置跟dev和prod的配置拆分,然后通过webpack-merge对配置进行整 ...