使用Docker Compose部署基于Go的ChatGPT API和代理服务器
在本篇博文中,我们将介绍如何使用 Docker Compose 部署基于 Go 的 ChatGPT API 和代理服务器。这两个服务可以用于构建一个实时的聊天机器人应用程序。
首先,我们需要创建一个名为 docker-compose.yml
的文件,并将以下代码复制到文件中:
version: '3'
services:
go-chatgpt-api:
container_name: go-chatgpt-api
image: linweiyuan/go-chatgpt-api
ports:
- 4000:8080
environment:
- GIN_MODE=release
- GO_CHATGPT_API_PROXY=socks5://chatgpt-proxy-server-warp:65535
depends_on:
- chatgpt-proxy-server-warp
restart: unless-stopped
chatgpt-proxy-server-warp:
container_name: chatgpt-proxy-server-warp
image: linweiyuan/chatgpt-proxy-server-warp
environment:
- LOG_LEVEL=OFF
restart: unless-stopped
以上配置文件定义了两个服务:go-chatgpt-api
和 chatgpt-proxy-server-warp
。
go-chatgpt-api
是一个基于 Go 编写的 ChatGPT API 服务。我们指定了容器的名称为go-chatgpt-api
,并使用linweiyuan/go-chatgpt-api
镜像作为容器。该服务将监听主机的 4000 端口,并将其转发到容器的 8080 端口。我们还设置了一些环境变量,如GIN_MODE
和GO_CHATGPT_API_PROXY
,用于配置 API 的行为和代理服务器的地址。chatgpt-proxy-server-warp
是一个代理服务器。我们指定了容器的名称为chatgpt-proxy-server-warp
,并使用linweiyuan/chatgpt-proxy-server-warp
镜像作为容器。该服务将提供一个 SOCKS5 代理服务器,用于连接到 ChatGPT。
这两个服务之间存在依赖关系。go-chatgpt-api
依赖于 chatgpt-proxy-server-warp
,因此在启动 go-chatgpt-api
之前,会先启动 chatgpt-proxy-server-warp
。
接下来,我们可以运行以下命令来启动应用程序:
docker-compose up -d
这将会创建并启动包含 ChatGPT API 和代理服务器的容器实例。同样,使用 -d
参数可以将容器在后台运行。
一旦容器启动完成,我们可以通过发送请求到 http://localhost:4000
来与 ChatGPT 进行交互。API 将会处理用户的请求,并通过代理服务器连接到 ChatGPT 进行响应的处理。
最后,如果您想停止并删除这两个容器,可以运行以下命令:
docker-compose down
这将会停止并删除正在运行的容器实例。
总结起来,本篇博文介绍了如何使用 Docker Compose 部署基于 Go 的 ChatGPT API 和代理服务器。通过简单的配置文件,我们能够快速搭建和管理一个实时的聊天机器人应用程序。希望本文对您有所帮助!