开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第14天,点击查看活动详情
这里为了写出自己的chatgpt机器人,我就先去试了下别人写的。这里记录下在我新的服务器上部署的全流程,并且记录我遇到的问题。纯干货,12.24凌晨生产嘎嘎新。
主要参考github开源项目djun/wechatbot: 为个人微信接入ChatGPT (github.com)
一、配置go环境
1.安装gcc
yum -y install gcc
yum -y install gcc-c++
我这里之前部署其他框架时已经下载过了,但是这个是编译源码必须的。
2.下载go安装包
这里我们安装到
root/software
目录,专门放压缩包的地方
cd /root/software
wget https://golang.google.cn/dl/go1.16.7.linux-amd64.tar.gz
3.解压go安装包
tar -xvzf go1.16.7.linux-amd64.tar.gz -C /root/app
4.配置环境变量
执行
vi /etc/profile
后复制以下代码添加到profile文件末尾
export GOROOT=/root/app/go/path
export PATH=$PATH:$GOROOT/bin
GOROOT
这里根据实际情况需要调整以下昂。
5.环境变量生效
source /etc/profile
6.检测一下看看有没有安装成功
go env
如下图表示安装成功
二、wechatbot项目部署
1.获取项目
git clone https://github.com/869413421/wechatbot.git
这里因为是新的服务器,不仅需要新装git
yum -y install git
而且还需要配一下ssh密钥。参考Permission denied (publickey). fatal: Could not read from remote repository. - 掘金 (juejin.cn)
2.进入项目目录
cd wechatbot
3.复制配置文件,并设置配置
cp config.dev.json config.json
启动前需替换config中的api_key
api_key
需要你提前注册好的昂。我这里注册是参考的OpenAI 推出超神 ChatGPT 注册攻略来了 - 掘金 (juejin.cn)这篇文章。
里面那个接码平台确实可以,我听取大哥们的意见选的india。第一个没成功,第二个才成功的。
4.启动项目
go run main.go
5.报错
go: github.com/eatmoreapple/openwechat@v1.2.1: Get "https://proxy.golang.org/github.com/eatmoreapple/openwechat/@v/v1.2.1.mod": dial tcp 172.217.163.49:443: i/o timeout
6.尝试解决
vi /etc/profile/
扩充一下配置,其实主要是GOPROXY
这个设置,目前的速度太慢了,需要配置个代理
export GO111MODULE=on
export GOPROXY=https://goproxy.cn
export GOROOT=/root/app/go
export GOPATH=/root/app/go/path
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
继续执行go run main.go
就可以正常运行了。
三、大功告成
四、还有一件事
我用xshell
;连接服务器执行这个程序发现断开连接这个程序也会跟着中断。还好我今天处理了类似的bug。
其实只需要执行程序时使用nohup
和&
即可。
nohup go run main.go >log.out &
nohup命令的功能就和它的名字一样,no hup,忽略hup信号,不挂断进程,进程仍然属于当前会话(终端关闭后,进程会变成孤儿进程,PPID变成1)。 例如:不加& 命令不会在后台执行