发布于 

zhenxun_bot Linux 部署记录

  

真寻 bot 是一个基于 Nonebot2go-cqhttp 开发,以 PostgreSQL 作为数据库的可爱Bot,需要 python 版本大于3.8

1.下载解压 zhengxun_bot 和 go-cqhttp

1
2
3
4
5
6
# 新建 bot 目录
mkdir bot/
# go-cqhttp
wget https://github.com/Mrs4s/go-cqhttp/releases/download/v1.0.0-rc3/go-cqhttp_linux_amd64.tar.gz && cd bot/ && mkdir go/ && tar -zxvf ../go-cqhttp_linux_amd64.tar.gz -C ./go
# zhenxun_bot
wget https://github.com/HibiKier/zhenxun_bot/archive/refs/tags/0.1.6.4.tar.gz && tar -zxvf ../0.1.6.4.tar.gz

2.安装和运行数据库

1
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

1.安装 postgresql

1
2
3
4
5
wget --quiet -O - http://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
# 更新
sudo apt-get update
# 安装 postgreSQL
!sudo apt-get -y install postgresql

2.启动 postgresql 服务

sudo service postgresql start

3.创建数据库并添加数据

输入 psql, 进入交互式 sql 界面, 分别执行下 sql语句

CREATE USER uname WITH PASSWORD 'zhenxun';

CREATE DATABASE testdb OWNER uname;

1
2
sudo su - postgres
psql
1
2
CREATE USER uname WITH PASSWORD 'zhenxun'
CREATE DATABASE testdb OWNER uname

4.使用 poetry 启动机器人

在这之前先去启动 go-cqhttp ,由于我使用 GUI 的 Linux 这里就不赘述了

1
2
3
pip3 install poetry #poetry 一个包管理虚拟环境
cd zhenxun_bot-0.1.6.4/ && poetry install # 安装依赖
cd zhenxun_bot-0.1.6.4/ && poetry run python bot.py # 启动 bot.py

5.安装插件

点这里 官方的插件库,下载你所需要的插件,根据仓库使用说明安装相关依赖,将插件文件夹拖到zhenxun_bot-0.1.6.4/extensive_plugin目录下,然后重启bot即可

6.遇到一些问题

1.缺少 nonebot 相关模块

1
2
pip3 install nonebot-adapter-onebot # 适配器
pip3 install nonebot2 == 2.0.0b5 # nonebot 主模块

2.(可选)python 版本过低升级

下载 python3.9 并编译安装,替换掉原来的软链接

1
2
3
4
5
6
7
8
# 下载 python3.9
wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz
tar -zxvf Python-3.9.0.tgz && cd Python-3.9.0 && sudo mkdir /usr/local/python3.9 && ./configure --prefix=/usr/local/python3.9 --enable-optimizations && make && make install
# 替换软链接
mv /usr/bin/python /usr/bin/python_bak && ln -s /usr/local/python3.9/bin/python3.9 /usr/bin/python3 && ln -s /usr/local/python3.9/bin/pip3.9 /usr/bin/pip3

#解决 pip3 无法使用
sudo rm /usr/bin/lsb_release

参考文章

领养一只可爱的小真寻—绪山真寻Bot部署教程

绪山真寻Bot官方文档