Centos7安装Docker版本chatgpt

安装docker和docker-compose

安装docker

yum install yum-utils -y
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
systemctl start docker
[root@VM-0-13-centos ~]# docker -v
Docker version 24.0.5, build ced0996

安装docker管理工具docker-compose

去github下载一个文件,找到最新版本,往下翻有各种版本,windows、linux等等,找到docker-compose-linux-x86_64这个文件下载下来直接就可以运行,不用其他的操作

wget https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-linux-x86_64
[root@VM-0-13-centos ~]# ./docker-compose-linux-x86_64  -v
Docker Compose version v2.20.3
chmod +x docker-compose-linux-x86_64
cp docker-compose-linux-x86_64  /usr/local/bin/docker-compose
docker-compose -v

此时docker和docker-compose就安装好了

设置国内阿里云的源为docker源,这一步可不操作,与本文无关

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/


下载chatgtp-demo

git clone https://github.com/ddiu8081/chatgpt-demo 
cd chatgpt-demo 
cp -r .env.example .env

填入你的chatgpt的API key

vim .env
docker-compose up -d
docker-compose ps

更改端口号,从3000改成4000

vim docker-compose.yml
ports:
        - "4000:3000"

重启

docker-compose restaer chatgpt-demo

关闭iptables,使用firewalld转发

systemctl stop docker
vim /etc/docker/daemon.json
{
    "iptables":false
}

防护墙开启转发

firewall-cmd --zone=public --add-masquerade --permanent
firewall-cmd --reload
firewall-cmd --list-all
firewall-cmd --zone=public --add-forward-port=port=4000:proto=tcp:toport=4000 --permanent
firewall-cmd --reload
docker-compose restart chatgpt-demo
firewall-cmd --permanent --add-port=4000/tcp
firewall-cmd --reload
curl -I localhost:4000
docker-compose ps
docker-compose up -d
systemctl restart docker

nginx反代用域名访问

安装epel源

yum install epel-release -y

安装nginx

yum install nginx
vi /etc/nginx/conf.d/proxy.conf

这里我用了子域名访问,需要先在的域名服务商那里设置好才可以chat.xxx.com这样访问

server {
        listen       80;
        server_name chat.域名.com  www.chat.域名.com;
        location / {
            proxy_pass   http://localhost:4000;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
}
    }

启动nginx

nginx

最终效果如下,如果报错就是你的api key有问题,需要一个比较纯净的不被openai官网屏蔽的IP地址

chatgpt.jpg

最后编辑于:2023/08/26作者: admin

发表评论