ChatGPT-Next-Web是非常优秀的一个ChatGPT的开源套壳项目无论是可用性还是美观度还是用户体验都是同类型产品里最好的,部署方式也很简单通过docker的方式直接部署一条命令“docker run -d -p 3000:3000 --restart always yidadaa/chatgpt-next-web”就搞定了,非常方便,但因为不是本地开发环境部署没法对页面进行自定义的修改,也就是所谓的魔改,比如说增加画图功能,增加语音功能,甚至增加用户管理功能等等,即使没有能力魔改通过开发环境进行简单修改,锻炼自己的代码能力也是极好的啊,但是部署的时候才发现这个项目的作者对于本地开发环境的部署方式可谓是惜字如金啊,简单的几句话完全看不懂啊。
经过不断的对项目文件的摸索,不断的翻看提交的issue终于把部署方式搞清楚了总结如下,以ubuntu系统部署为例。
首先更新系统相关组件,避免后面出现稀奇古怪的问题:
sudo apt-get update && sudo apt-get upgrade
接下来安装nodejs git ,node用于运行JavaScript,git用来拉取代码,yarn:
sudo apt-get -y install nodejs git yarn
因为开发环境要求node.js的版本,所以我们还需要安装NVM,管理Node版本的好工具,否则自己升级到指定版本非常麻烦:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
环境搞好后拉取代码:
接下来进入目录,安装依赖包
yarn install ,注意看package.json文件需要在目录中
然后就可以运行yarn build进行构建了,注意服务器的资源确保4c,16GB否则构建过程系统资源会吃到百分之百最终导致失败。
终于看到胜利的曙光了,编写一个启动的脚本,可以包含基本的api key,端口号,否则访问页面的密码等,视具体的需求而定:
nano startweb.sh
export OPENAI_API_KEY=sk-xxxxxxxxxx
export CODE=xxxxxxx
export PORT=8090
yarn start
大功告成
运行 sh startweb.sh即可,终于可以开心搞自己的ChatGPT了!