MaiBot/docs/linux_deploy_guide_for_begi...

8.4 KiB
Raw Blame History

面向纯新手的Linux服务器麦麦部署指南

事前准备

为了能使麦麦不间断的运行,你需要一台一直开着的服务器。

如果你想购买服务器

华为云、阿里云、腾讯云等等都是在国内可以选择的选择。

租一台最低配置的就足敷需要了,按月租大概十几块钱就能租到了。

如果你不想购买服务器

你可以准备一台可以一直开着的电脑/主机,只需要保证能够正常访问互联网即可

下文将统称它们为服务器

我们假设你已经有了一台Linux架构的服务器。举例使用的是Ubuntu24.04,其他的原理相似。

0.我们就从零开始吧

网络问题

为访问Github相关界面推荐去下一款加速器新手可以试试Watt Toolkit

安装包下载

MongoDB

进入MongoDB下载页,并选择版本

以Ubuntu24.04 x86为例保持如图所示选项点击Download即可,如果是其他系统,请在Platform中自行选择:

不想使用上述方式?你也可以参考官方文档进行安装,进入后选择自己的系统版本即可

QQ可选/Napcat

如果你使用Napcat的脚本安装可以忽略此步 访问https://github.com/NapNeko/NapCatQQ/releases/latest 在图中所示区域可以找到QQ的下载链接选择对应版本下载即可 从这里下载可以保证你下载到的QQ版本兼容最新版Napcat 如果你不想使用Napcat的脚本安装还需参考Napcat-Linux手动安装

麦麦

先打开https://github.com/MaiM-with-u/MaiBot/releases 往下滑找到这个 下载指引 下载箭头所指这个压缩包。

路径

我把麦麦相关文件放在了/moi/mai里面你可以凭喜好更改记得适当调整下面涉及到的部分即可。

文件结构:

moi
└─ mai
   ├─ linuxqq_3.2.16-32793_amd64.deb   # linuxqq安装包
   ├─ mongodb-org-server_8.0.5_amd64.deb  # MongoDB的安装包
   └─ bot
      └─ MaiMBot-0.5.8-alpha.zip # 麦麦的压缩包

网络

你可以在你的服务器控制台网页更改防火墙规则允许6099808027017这几个端口的出入。

1.正式开始!

远程连接你的服务器你会看到一个黑框框闪着白方格这就是我们要进行设置的场所——终端了。以下的bash命令都是在这里输入。

2. Python的安装

  • 导入 Python 的稳定版 PPAUbuntu需执行此步Debian可忽略
sudo add-apt-repository ppa:deadsnakes/ppa
  • 导入 PPA 后,更新 APT 缓存:
sudo apt update
  • 在「终端」中执行以下命令来安装 Python 3.12
sudo apt install python3.12
  • 验证安装是否成功:
python3.12 --version
  • (可选)更新替代方案,设置 python3.12 为默认的 python3 版本:
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.12 1
sudo update-alternatives --config python3
  • 在「终端」中,执行以下命令安装 pip
sudo apt install python3-pip
  • 检查Pip是否安装成功
pip --version
  • 安装必要组件
sudo apt install python-is-python3

3.MongoDB的安装

如果你是参考官方文档进行安装的,可跳过此步

cd /moi/mai
dpkg -i mongodb-org-server_8.0.5_amd64.deb
mkdir -p /root/data/mongodb/{data,log}

4.MongoDB的运行

service mongod start
systemctl status mongod #通过这条指令检查运行状态

有需要的话可以把这个服务注册成开机自启

sudo systemctl enable mongod

5.Napcat的安装

# 该脚本适用于支持Ubuntu 20+/Debian 10+/Centos9
curl -o napcat.sh https://nclatest.znin.net/NapNeko/NapCat-Installer/main/script/install.sh && sudo bash napcat.sh

执行后脚本会自动帮你部署好QQ及Napcat 如果你已经手动安装了Napcat和QQ可忽略此步

成功的标志是输入napcat出来炫酷的彩虹色界面

6.Napcat的运行

此时你就可以根据提示在napcat里面登录你的QQ号了。

napcat start <你的QQ号>
napcat status #检查运行状态

然后你就可以登录napcat的webui进行设置了

http://<你服务器的公网IP>:6099/webui?token=napcat

如果你部署在自己的电脑上: http://127.0.0.1:6099/webui?token=napcat

[!WARNING] 如果你的麦麦部署在公网,请务必修改Napcat的默认密码

第一次是这个后续改了密码之后token就会对应修改。你也可以使用napcat log <你的QQ号>来查看webui地址。把里面的127.0.0.1改成<你服务器的公网IP>即可。

登录上之后在网络配置界面添加websocket客户端名称随便输一个url改成ws://127.0.0.1:8080/onebot/v11/ws保存之后点启用,就大功告成了。

7.麦麦的安装

step 1 安装解压软件

sudo apt-get install unzip

step 2 解压文件

cd /moi/mai/bot # 注意:要切换到压缩包的目录中去
unzip MaiMBot-0.5.8-alpha.zip

step 3 进入虚拟环境安装库

cd /moi/mai/bot
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt

step 4 试运行

cd /moi/mai/bot
python -m venv venv
source venv/bin/activate
python bot.py

肯定运行不成功,不过你会发现结束之后多了一些文件

bot
├─ .env.prod
└─ config
   └─ bot_config.toml

你可以使用vim、nano等编辑器直接在终端里修改这些配置文件但如果你不熟悉它们的操作也可以使用带图形界面的编辑器。 如果你的麦麦部署在远程服务器,也可以把它们下载到本地改好再传上去

step 5 文件配置

本项目需要配置两个主要文件:

  1. .env.prod - 配置API服务和系统环境
  2. bot_config.toml - 配置机器人行为和模型

API

你可以注册一个硅基流动的账号通过邀请码注册有14块钱的免费额度https://cloud.siliconflow.cn/i/7Yld7cfg

修改配置文件

请参考

step 6 运行

现在再运行

cd /moi/mai/bot
python -m venv venv
source venv/bin/activate
python bot.py

应该就能运行成功了。

8.事后配置

可是现在还有个问题只要你一关闭终端bot.py就会停止运行。那该怎么办呢我们可以把bot.py注册成服务。

重启服务器打开MongoDB和napcat服务。

新建一个文件,名为bot.service,内容如下

[Unit]
Description=maimai bot

[Service]
WorkingDirectory=/moi/mai/bot
ExecStart=/moi/mai/bot/venv/bin/python /moi/mai/bot/bot.py
Restart=on-failure
User=root

[Install]
WantedBy=multi-user.target

里面的路径视自己的情况更改。

把它放到/etc/systemd/system里面。

重新加载 systemd 配置:

sudo systemctl daemon-reload

启动服务:

sudo systemctl start bot.service # 启动服务
sudo systemctl restart bot.service # 或者重启服务

检查服务状态:

sudo systemctl status bot.service

现在再关闭终端检查麦麦能不能正常回复QQ信息。如果可以的话就大功告成了

9.命令速查

service mongod start # 启动mongod服务
napcat start <你的QQ号> # 登录napcat
cd /moi/mai/bot # 切换路径
python -m venv venv # 创建虚拟环境
source venv/bin/activate # 激活虚拟环境

sudo systemctl daemon-reload # 重新加载systemd配置
sudo systemctl start bot.service # 启动bot服务
sudo systemctl enable bot.service # 启动bot服务

sudo systemctl status bot.service # 检查bot服务状态
python bot.py  # 运行麦麦