本篇文章主要包含以下内容:
- 腾讯云服务器的购买(免费体验)与基本使用
- 在Linux服务器上安装Python环境
- 通过Winscp在服务器上安装go-cqhttp框架
- 后台运行机器人
相关文章跳转: 基于go-cqhttp框架实现QQ机器人 - 掘金 (juejin.cn)
1. 免费体验腾讯云
点击链接进入腾讯云免费体验馆: 免费体验馆 (tencent.com)
笔者选择的是 '云服务器 2核2G4M' (原因是其他免费体验1个月的都售罄了!)
点击
立即体验
(此处笔者为已体验),进入服务器配置选择界面,随便选一个地区,并选择操作系统为 Ubuntu Server 18.04...
随后按页面提示完成订单即可.
2. 登录云服务器
点击网页右上角控制台
或点击该链接:总览 - 控制台 - 腾讯云 (tencent.com)进入控制台
在'我的资源'下点击云服务器
进入服务器管理页面,此时可以看到刚刚购买的服务器.
(如果没有请点击左上角切换到购买服务器时选择的地区)
随后点击左侧小方框选中该服务器,点击上方的重置密码,在弹出页面设置密码,该密码用于登录服务器.
设置完成后,点击右侧的登录
,此时会跳转到 '腾讯云 OrcaTerm'页面,出现如下图所示界面:
(如果没出现,请关闭'OrcaTerm页面'重新点击登录)
在此页面上输入刚刚设置的密码即可,用户名和端口可以不必修改.
点击登录后跳出下图界面,说明初次登录服务器成功!
3. 以root用户登录服务器
参考官方文档:云服务器 登录和连接实例问题-常见问题-文档中心-腾讯云 (tencent.com)的 Ubuntu 系统如何使用 root 用户登录实例?部分.
4.安装python环境
参考博客: Linux服务器安装Python3.7开发环境与配置CSDN-博客
- 终端输入
apt-get install python3.7
,该命令会自动下载安装python3.7 - 终端输入
rm /usr/bin/python
,删除默认python指向 - 终端输入
ln -s /usr/bin/python3.7 /usr/bin/python
,设置新的python指向 - 终端输入
python
检查是否安装成功,出现下图提示则说明安装成功
运行
python
指令会进入python编辑模式,Ctrl+D
即可退出.
5. 安装go-cqhttp框架
参考博客: go-cqhttp Linux 部署步骤-CSDN博客
配置安全组
go-cqhttp框架需要用到 5901
端口,我们需要在服务器安全组中进行相关配置.
- 进入
控制台
-云服务器
,点击左侧安全组
,进入下图页面
2. 点击
修改规则
,跳转后点击添加规则
.来源设置为:0.0.0.0/0,协议端口设置为:TCP:5901
WinSCP传输压缩包
- 安装WinSCP
WinSCP的主要功能是在本地计算机和远程计算机之间进行文件传输.
官网下载地址(可能需要魔法): WinSCP :: Official Site :: Download,下载好正常安装即可.
运行WinSCP,弹出以下界面:
主机名填写你的公网IP,用户名填写root,密码填写对应的即可,然后点击登录.
左侧为本地电脑文件,右侧为服务器文件,把想要传输的文件拖动过去即可.
- 下载go-cqhttp压缩包
前往github下载界面: Release v1.0.0-rc4 · Mrs4s/go-cqhttp (github.com)
下载cqhttp对应的linux服务端go-cqhttp_linux_amd64.tar.gz文件
利用WinSCP在服务器中右键新建一个名为demo
的目录(名字随便取吧)
然后将刚刚下载好的压缩包拖入demo目录中.
- 解压运行go-cqhttp
返回服务器,即'腾讯云 OrcaTerm'页面.
- 终端输入
ls
,查看demo目录是否新建成功 cd demo
,进入demo目录tar -zxvf go-cqhttp_linux_amd64.tar.gz
,解压刚刚下载的文件./go-cqhttp
,运行go-cqhttp初始化,输入 ,生成默认配置文件- 通过WinScp,替换生成的
config.yml
文件,并上传windows版本生成的device.json
和session.token
- 此时
./go-cqhttp
,机器人可以成功登录
6.后台运行机器人
- 先将
main.py
和api.py
文件上传到服务器. - 终端依次输入下列指令
cd demo
nohup ./go-cqhttp >gocq.log 2>&1 &
nohup python main.py >pyOutPut.log 2>&1 &
jobs
若出现如图所示信息,则说明机器人已成功在后台运行,此时关闭终端也不会打断机器人运行.