写在前面
因为Windows下部署的话,有时候太忙没开机就没法推送了,于是尝试使用服务器部署一次,就有了本文。部署参考了 Mirai论坛与 GraiaX文档。感谢社区大佬们的教程,搭建Mirai十分方便。
内容更新
因为某些原因,需要添加签名服务器才能够正常访问了,添加了该部分内容的配置。
安装JDK
首先请卸载环境中已经存在的jdkrpm -qa|grep jdk
,找到目前环境中存在的卸载yum -y remove java-1.8.0-openjdk-headless-1.8.0.312.b07-1.el7_9.x86_64
,否则可能使用java -version查看到的仍是原来安装的。
Oracle JDK
Oracle下载jdk17,直接使用命令:wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz
然后安装tar -zxvf jdk-17_linux-x64_bin.tar.gz
最后修改环境变量 vim /etc/profile
刷新 source /etc/profile
然后再查看 java -version
OpenJ9 JDK
本人使用的是OpenJ9的JDK17,下面给出安装过程:
OpenJ9下载jdk https://developer.ibm.com/languages/java/semeru-runtimes/downloads/
下载rpm,通过Xftp5传输到Linux,然后执行命令:rpm -ivh jdk-17.0.5.8.rpm
安装完成后通过指令查找安装位置rpm -pql /www/jdk-17.0.5.8.rpm
vim /etc/profile
修改路径
刷新配置然后再查看即可。
MCL安装
# 注意使用的是mcl-2.1.2
wget https://github.com/iTXTech/mirai-console-loader/releases/download/v2.1.2/mcl-2.1.2.zip
unzip mcl-2.1.2.zip -d mcl-2.1.2
遇到下载不动的情况请直接去下载后传到服务器:https://github.com/iTXTech/mirai-console-loader/releases
启动MCL控制台
先使用./mcl
指令就可以启动了。如果出现权限问题请赋予本文件夹内的所有文件执行权利chmod +x ...
Mirai Api Http 与 配置账号信息
# 在当前目录下执行下面命令安装,并且会启动MCL控制台,如上图所示,这里不放图了。
./mcl --update-package net.mamoe:mirai-api-http --channel stable-v2 --type plugin
./mcl -u
现在我们进入到控制台中,配置一下账号自动登录,这样每次启动就会自动登录账号了。同时我们需要修改协议,默认是Android手机,但是我们后面会用到手机验证功能,所以这里需要修改一下,最好改成不常用的设备就行。这里举例一些登录协议,自行选择:
安卓手机:ANDROID_PHONE
安卓平板:ANDROID_PAD
安卓手表:ANDROID_WATCH
苹果平板:IPAD
苹果电脑:MACOS
/autoLogin add <账号> <密码>
/autoLogin setConfig <账号> protocol <协议>
到了这一步,如果配置过Windows环境下的已经可以发现目录下的文件夹已经和部署过的没什么区别了,可以自由修改并且添加插件了。这里我们还有重要的步骤。
登录账号
首先重启mcl,我们看到如下提示,需要输入滑动验证码。将最下面给的验证网址复制到游览器,同时打开F12,然后滑动验证完成后将获取到的ticke回去即可。
更新1:最新的需要配合滑动验证码,和这里配合新的手机验证码操作完成登录。
你需要确保你的mcl版本是较新的版本:
打开 mcl 工作目录 下的 config.json,编辑 packages
将net.mamoe:mirai-console
,net.mamoe:mirai-console-terminal
,net.mamoe:mirai-core-all
中的 channel 从 stable 改为 maven-stable 或者 maven
maven-stable 将会更新到 最新标准版 2.13.3
maven 将会更新到 最新测试版 2.14.0-RC
依然是按照控制台提示操作,输入ticket与手机验证码后即可完成登录。
更新2
需要在登陆之前部署一个签名服务器,需要有docker环境(此处略)
# 检查端口占用,8888
netstat -lntp
# 只需要2步,拉取docker镜像
docker pull kiliokuara/vivo50:latest
# 使用下面的命令run
docker run -d --restart=always -e SERVER_IDENTITY_KEY=vivo50 -e AUTH_KEY=kfc -e PORT=8888 -p 8888:8888 --log-opt mode=non-blocking --log-opt max-buffer-size=4m -v /home/vivo50/serverData:/app/serverData -v /home/vivo50/testbot:/app/testbot --name vivo50 kiliokuara/vivo50
# 如果意外,重新启动即可
docker start vivo50
终端复用(保持运行)
我们用Xshell之类的工具连接后,关掉会话它就不会继续运行了。
我们需要一个终端复用的工具Tmux来挂着我们的Mirai。
安装tmux指令:yum install tmux
,弹出来确认安装即可。
然后使用指令tmux new -s mcl
创建一个mcl会话,使用tmux attach -t mcl
进入会话启动mcl控制台。
在Tmux的终端中,常用快捷键有:
Ctrl+B C
切换回控制台
Ctrl+B P
切换回会话
Ctrl+B S
查看所有会话
这样你就可以退出自己的终端会话,控制台也会一直运行了。
至此部署结束,参考官方文档的合作项目改造自己的Mirai吧。