使用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-apichatgpt-proxy-server-warp

  • go-chatgpt-api 是一个基于 Go 编写的 ChatGPT API 服务。我们指定了容器的名称为 go-chatgpt-api,并使用 linweiyuan/go-chatgpt-api 镜像作为容器。该服务将监听主机的 4000 端口,并将其转发到容器的 8080 端口。我们还设置了一些环境变量,如 GIN_MODEGO_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 和代理服务器。通过简单的配置文件,我们能够快速搭建和管理一个实时的聊天机器人应用程序。希望本文对您有所帮助!

最后修改:2023 年 06 月 16 日
如果觉得我的文章对你有用,请随意赞赏