本次搭建的BOT是来源于Hibikier大佬的BOT项目,BOT主要使用的部件和依赖都和之前搭建过的HoshinoBot类似,都是使用Go-cqhttp作为接受消息的前端

一开始博主尝试使用腾讯云的服务器在Centos7这个环境上搭建,但是搭建完成后playwright这个插件博主不知道如何进行安装。。于是在家使用老电脑组了一个Ubuntu的环境来进行搭建

博主后来发现原来Centos也是可以搭起来的。。所以后来就继续放在云服务器上了

本篇文章主要记录的是在安装时碰到的问题,主要的安装命令还是来源自Hibikier大佬的安装文档

1.安装运行所需的环境

wget  https://mirrors.huaweicloud.com/python/3.9.5/Python-3.9.5.tgz
# 下载 Python 源代码
# 官方源 : https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tgz

tar -xf Python-3.9.5.tgz && cd Python-3.9.5
# 解压并进入文件夹

yum install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev
# 安装依赖

./configure
# 编译检查, 生成 Makefile

make&&make install
# 编译安装

yum install python3-pip
# 安装pip3

2.安装GO-cqhttp

cd
# 进入到用户文件夹

mkdir go-cqhttp&&cd go-cqhttp
# 创建 go-cqhttp 文件夹并将工作路径切换到这个文件夹

wget https://github.com/Mrs4s/go-cqhttp/releases/download/v1.0.0-beta8-fix2/go-cqhttp_linux_amd64.tar.gz
# 可使用 github 镜像站提高境内服务器下载 github 文件的速度
# 例如 hub.fastgit.com, github.dihe.moe
# 下载 go-cqhttp

tar -xf go-cqhttp_linux_amd64.tar.gz
# 解压

chmod +x go-cqhttp
# 给 go-cqhttp 执行权限(默认有带x权限,其实这一步可以不用使用)

./go-cqhttp
# 首次运行 go-cqhttp , 在当前目录下生成配置文件 config.yml

ctrl+c取消go-cqhttp的运行,然后准备配置go-cqhttp的配置文件(config.yml) 

Go-cqhttp的配置文件和Hoshino那边的配置是类似的,但是要注意下图的这个配置,反向ws的设置为:

universal: ws://127.0.0.1:8080/onebot/v11/ws/

3.安装Postgres数据库

(1)安装存储库RPM


Centos环境:
yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

(2)安装 PostgresSQL数据库


Centos环境:
yum install -y postgresql13-server

Ubuntu环境:
apt install postgresql postgresql-contrib

(3)初始化数据库并设置自动开机启动


Centos环境:
/usr/pgsql-13/bin/postgresql-13-setup initdb
systemctl enable postgresql-13
systemctl start postgresql-13

(4)创建数据库和用户


 su - postgres  # 切换用户
 psql
       #  用户名↓         # 密码↓
 create user laoju with password 'zhenxun';      # 创建用户
      # 数据库名称↓     所有者↓
 create database testdb owner laoju;             # 创建数据库

(5)修改数据库配置文件,开启远程访问


/q  #退出psql
​
Centos环境:
vim /var/lib/pgsql/13/data/postgresql.conf  #修改listen_addresses 的注释,去掉“#”号,并把localhost改为*
​
Ubuntu环境:
 vim /etc/postgresql/12/main/postgresql.conf  #修改listen_addresses 的注释,去掉“#”号,并把localhost改为*
​
:wq #保存退出
Centos7环境:
vim /var/lib/pgsql/13/data/pg_hba.conf 

Ubuntu环境:
 vim /etc/postgresql/12/main/pg_hba.conf 

/IPv4 local connections  #搜索这一行

在下方添加如下图的内容

(6)重启数据库


su - #返回root或你个人的用户界面
​
Centos环境:
systemctl restart postgresql-13.service
​
Ubuntu环境:
systemctl restart postgresql
​

4.部署真寻BOT

(1)前往Hibikier的项目地址下载真寻BOT的本体

cd /home && git clone https://github.com/HibiKier/zhenxun_bot.git

(2)安装依赖

cd /home/zhenxun_bot && pip3 install poetry && poetry install

poetry shell #进入虚拟环境

playwright install chromium #安装chromium

playwright install-deps chromium #ubuntu或debian系统下需要该命令

(3)修改 .env.dev文件,设置超级用户和昵称

(4)修改config/config.yaml数据库配置

(5)启动真寻bot

poetry shell #需要在poetry虚拟环境中启动

python3 bot.py

(6)配置真寻BOT配置文件

打开 configs/config.yaml,里面包含的是各种插件的配置项,填写完毕后重启真寻Bot

(7)安装playwright环境


Centos环境:
pip install --upgrade pip
pip install playwright
playwright install
​
Ubuntu环境:
playwright install-deps chromium
# or
python3 -m playwright install-deps chromium

(8)安装FFmpeg

因本项目使用了语音文件等,该音频需要依赖ffmpeg


Centos环境:
yum install -y ffmpeg
​
Ubuntu环境
apt install -y ffmpeg

5.真寻插件安装方法

在/home/zhenxun_bot目录下添加my_plugins这个文件夹(mkdir /home/zhenxun_bot/my_plugins)

然后在/home/zhenxun_bot/bot.py中添加:

nonebot.load_plugins("my_plugins")

然后把下载的插件放在my_plugins文件夹中,重启真寻即可

6.备注一些ubuntu系统中会用到的指令


apt remove [要卸载的软件]