
TL;DR:gccapi 是把统一大模型接口网关 NewAPI、订阅与分销服务 Sub2API、Postgres 持久化、Redis 缓存与 Nginx 反向代理打包到 Docker Compose 的一套部署源码,面向需要私有化接入多家大模型、同时具备订阅运营能力的团队。
源码系统概览
文章正文
Gccapi 是由深圳德沛开源数据科技有限公司推出的统一大模型接口网关与 AI 资产管理部署源码,目标是把多模型、多渠道接入场景下常见的接口不统一、部署复杂、缓存与会话管理分散等问题,通过容器化方式整合到一套可重复执行的方案里。
整套方案以 Docker Compose 为部署主线,核心服务包括统一大模型接口网关 NewAPI、订阅与分销服务 Sub2API、Postgres 关系数据库、Redis 缓存以及 Nginx 反向代理。所有组件均使用官方维护的镜像,配置文件随仓库一起发布,clone 后即可在本地或服务器上拉起完整栈。
从平台视角看,Gccapi 既是统一接入层,也是订阅与计费平台。普通用户通过单一域名访问站点即可使用多家大模型服务,管理员在后台完成渠道接入、用户管理、订阅配置、用量统计与系统设置,运维人员借助 Postgres、Redis 与 Nginx 提供的分层架构完成日常监控与备份。
本仓库本身不包含上游 NewAPI 与 Sub2API 的应用源码,只提供编排、配置、文档、截图与脚本;正是这种编排与配置优先的设计,让 Gccapi 既能作为生产环境的接口网关长期运行,也能作为学习容器化部署与多服务协作的参考样例。
下文将依次介绍源码组成、典型适用场景、核心功能亮点、技术栈、部署提示、截图演示、常见问题、安全风险与下载说明,帮助读者在动手之前对整个方案建立完整认知。
源码简介
源码根目录包含 26 个文件,总大小约 1.5MB,以 docker-compose.yml、docker-compose.sub2api.yml、README.md、docs/、images/、nginx/、scripts/、update.ps1 等条目为主,结构清晰、无冗余依赖。
docker-compose.yml 是主服务编排文件,定义 redis、postgres、newapi、nginx 四个服务,使用 api-net 桥接网络互相通信,newapi 通过 SQL_DSN 连接 Postgres,通过 REDIS_CONN_STRING 连接 Redis,容器端口 80 与 443 由 Nginx 暴露。
docker-compose.sub2api.yml 是订阅与分销服务的独立编排,使用 sub2api-net 网络,服务名为 sub2api,镜像 weishaw/sub2api:0.1.125,直接以 8080 端口对外提供引导与管理界面,与主网关通过独立网络解耦。
nginx/default.conf 与 nginx/Dockerfile 负责反向代理与静态资源托管,Dockerfile 把 docs 目录构建进镜像,使 /docs/ 路径始终跟随仓库版本发布;scripts/pg_export.sh 与 scripts/server_restore.sh 提供 Postgres 导出与服务器一键恢复能力,update.ps1 是 Windows 环境下的更新脚本。
docs 子目录包含 9 份 Markdown 文档,覆盖项目概览、生产部署、Linux/WSL 部署、数据备份与回迁、存储、同步、版本、使用说明与方案详解,既是用户手册也是二次开发时的设计参考。
适用场景
企业内部统一 AI 接入网关。研发团队只需要面对一个域名、一套鉴权与一套额度策略,即可在内部系统里调用多家大模型服务,避免每个业务线单独接入账号。
个人或小团队私有化部署。具备一台 2 核 4G 内存的云服务器即可拉起完整栈,在自有域名下做模型试用、API 测试与脚本编写,适合独立开发者和极客玩家。
需要统一管理模型接口、缓存与会话的项目。借助 Postgres 持久化用户、渠道、令牌与支付记录,Redis 提供热点缓存与会话保持,所有关键数据集中在一套管理后台。
需要独立订阅服务的业务场景。主网关 NewAPI 负责模型路由与计费,Sub2API 单独提供订阅与分销能力,可在主站之外搭一个面向二级代理或团队成员的订阅门户。
需要脚本化更新与恢复的运维环境。update.ps1 与 server_restore.sh 提供一键打包、上传、恢复、回滚操作,适合需要周期性发布新版本镜像或紧急回滚的运维流程。
功能亮点
统一入口与多模型适配。NewAPI 在后台聚合多家上游大模型服务,业务侧使用 OpenAI 兼容的 /v1/chat/completions 接口即可调用,模型路由、失败重试与计费由网关统一处理。
独立的订阅与分销服务。Sub2API 以 8080 端口独立运行,提供账号管理、订阅开通、Token 充值与分销返利等运营能力,与主网关通过环境变量解耦,便于独立扩缩容。
完整的持久化与缓存层。Postgres 15.6-alpine 承担用户、渠道、令牌、支付记录等核心数据,Redis 7.4.2-alpine 提供热点缓存与 AOF 持久化,保证服务重启后会话不丢失。
Nginx 反向代理与统一域名。本地构建的 nginx 镜像把 80/443 暴露给宿主,内部把请求按路径转发到 NewAPI 主站、/docs/ 文档站以及 Sub2API 8080 端口,业务侧无需关心容器网络。
完善的文档与脚本生态。docs/ 目录提供从部署、备份、同步、恢复到版本管理的全流程说明,scripts/ 目录提供 Linux/WSL 环境下的打包、上传与一键恢复脚本,update.ps1 给 Windows 用户提供熟悉的更新入口。
可视化仪表板与排行榜。管理后台提供数据看板、模型用量排行、Token 消耗统计等模块,管理员可以实时观察每个模型、每个渠道的调用情况,运营决策有数据支撑。
技术架构与部署指南
技术栈与运行环境
网关服务:NewAPI(基于 calciumion/new-api:v1.0.0-rc.4,Go 语言实现,提供 LLM 统一接口与渠道管理)
订阅服务:Sub2API(基于 weishaw/sub2api:0.1.125,提供订阅、分销与计费管理)
数据库:Postgres 15.6-alpine(用户、渠道、令牌、支付记录等核心数据持久化)
缓存:Redis 7.4.2-alpine(热点缓存、会话保持与 AOF 持久化)
反向代理:Nginx(基于 nginx/Dockerfile 自建镜像,统一 80/443 入口与 /docs/ 静态站点发布)
部署形态:Docker / Docker Compose(单主编排 docker-compose.yml + 订阅编排 docker-compose.sub2api.yml)
辅助工具:scripts/pg_export.sh、scripts/server_restore.sh、update.ps1、docs/ 全流程文档
安装与部署提示
克隆仓库后进入项目根目录,先修改 docker-compose.yml 与 docker-compose.sub2api.yml 中的 Redis 密码、Postgres 密码、SESSION_SECRET、JWT_SECRET 等占位字符串,生产环境务必替换为高强度随机值。
启动主网关栈:在项目根目录执行 docker compose up -d,首次启动会拉取 redis、postgres、newapi、nginx 四个镜像并初始化数据卷,完成后再执行 docker compose -f docker-compose.sub2api.yml up -d 拉起 Sub2API 订阅服务。
服务起来后通过以下地址访问:主站 http://localhost,文档站 http://localhost/docs/,Sub2API 引导页 http://localhost:8080;生产环境请把 80/443 对外开放并按需配置域名与 HTTPS 证书。
首次登录后请进入 NewAPI 后台,先在渠道管理里添加 OpenAI 兼容的上游 Base URL 与 API Key,再在模型管理里启用对应模型,之后即可在用户管理中创建子账号、生成访问令牌。
Sub2API 第一次访问时会引导设置管理员账号,设置完成后即可在订阅管理中配置套餐、金额、返利比例等运营参数,主网关与订阅服务通过独立网络互相解耦,故障时不影响主站使用。
更新与备份:Windows 环境直接执行 .\update.ps1 即可拉取最新镜像并重启容器,Linux/WSL 环境参考 docs/DEPLOY_LINUX.md 调用 scripts/wsl_bundle_and_upload.sh 与 scripts/server_restore.sh 完成打包上传与服务器恢复。
截图与演示说明
以下截图来自本地 assets,本仓库无 GitHub 原版,所有配图均来自 Gccapi 平台(GitCC API)的实际界面。

第 1 张:Gccapi 统一大模型接口网关首页 – 标注 42+ 上游服务、84+ 聊天模型、42+ 兼容 API 路由、8+ 模型供应商。

第 2 张:Gccapi 后台概览 – 公司简介、技术能力、服务目标、应用场景四张卡片。

第 3 张:Gccapi 排行榜页 – 最近一周热门模型 Token 用量 247.6M 柱状图及 LLM 排行列表。

第 4 张:Gccapi 关于我们页 – 介绍深圳德沛开源数据科技有限公司与统一大模型接口网关项目背景。

第 5 张:Gccapi 文档中心 – Swagger 风格 AI 模型接口目录,涵盖 OpenAI Chat/Responses、图片生成、Claude、Gemini、Embeddings 等格式。

第 6 张:Sub2API 管理控制台 – API 数、账号、今日请求、用户、Token 等核心指标仪表板。
常见问题
问:Gccapi 适合什么人使用?
答:适合需要在自有服务器上统一接入多家大模型、并且希望同时具备订阅与分销能力的个人开发者、创业团队与企业 IT;也适合作为学习 Docker Compose 多服务编排与 AI 资产管理后台的参考样例。
问:默认部署需要什么服务器配置?
答:测试环境 1 核 2G 内存即可拉起主网关栈,推荐生产环境使用 2 核 4G 内存、40G SSD、5M 带宽以上的云服务器,数据量大时可单独扩容 Postgres 与 Redis 数据卷所在磁盘。
问:能否把模型路由和订阅管理分别部署?
答:可以。docker-compose.yml 负责 NewAPI 网关,docker-compose.sub2api.yml 单独负责 Sub2API 订阅服务,两个编排使用不同的桥接网络(api-net 与 sub2api-net),可以部署在同一台机器,也可以拆分到不同机器。
问:数据库和缓存组件是否必须使用 Postgres 和 Redis?
答:NewAPI 与 Sub2API 的官方镜像默认依赖 Postgres 与 Redis,本仓库的 docker-compose 文件已固化这套组合;如果想替换为 MySQL,需要自行修改 SQL_DSN 与 DB_TYPE 环境变量并调整对应服务定义。
问:生产环境部署前最关键的步骤是什么?
答:第一是把所有占位密钥(Redis 密码、Postgres 密码、SESSION_SECRET、JWT_SECRET)替换为高强度随机值;第二是配置 Nginx 的 HTTPS 证书与域名;第三是按 docs/BACKUP_FROM_PROD.md 的指引搭好定时备份与一键恢复流程。
问:项目是否提供独立的 Sub2API 服务?
答:是的。Sub2API 作为独立服务运行在 8080 端口,提供订阅开通、Token 充值、分销返利、用户管理等运营能力,与 NewAPI 主网关通过环境变量解耦,故障时不影响主站对外提供模型接口。
安全风险提示
默认密钥风险:docker-compose.yml 与 docker-compose.sub2api.yml 中包含占位性质的 Redis 密码、Postgres 密码、SESSION_SECRET、JWT_SECRET,直接用于公网将带来严重安全隐患,生产部署前必须替换。
公网暴露面管理:主网关 80/443 与 Sub2API 8080 端口默认直接暴露给宿主机,建议在云服务商安全组里限制来源 IP,并在 Nginx 侧开启限流与基础 WAF 规则,避免被刷接口造成账单失控。
数据备份与恢复:Postgres 中的用户、渠道、支付记录是核心资产,务必按 docs/BACKUP_FROM_PROD.md 配置定时 pg_dump 备份并把备份文件异地保存,Sub2API 的 sub2api_data 卷也需要周期性归档。
上游 API Key 保密:在 NewAPI 后台添加渠道时填入的 OpenAI 兼容 API Key 直接决定上游额度,管理员账号必须使用强密码并开启登录审计,避免被撞库或社会工程学攻破。
合规与备案提醒:整套方案只是工具与基础设施,不涉及具体模型调用时的合规边界;在中国大陆面向公众提供生成式 AI 服务前,请按《生成式人工智能服务管理暂行办法》要求完成相应备案。
下载说明
本仓库为 GitCC API(Gccapi)官方编排与配置仓库,不包含上游 NewAPI 与 Sub2API 的应用源码,所有镜像通过 Docker Hub 拉取;下载后请按本文「安装与部署提示」小节替换默认密钥并按需调整端口与数据卷。
解压后请优先阅读 README.md、docs/README.md 与 docs/DEPLOY_LINUX.md,根据目标环境(Linux、WSL、Windows)选择对应的部署路径,生产环境务必先在测试环境跑通完整流程再上线。
本仓库源码以容器编排、配置、文档、截图、脚本为主体,适合作为企业内部 AI 资产管理平台与统一接口网关的起点,也方便作为学习多服务容器化协作的参考样例。
项目仓库地址:https://www.gitcc.com/bigbigsea/gcc-token-api
| 维度 | Gccapi | New API | One API | FreeGPTHub |
|---|---|---|---|---|
| 部署形态 | Docker Compose 多服务 | 单镜像 Go 二进制 | 单镜像 Go 二进制 | Python 包 |
| 订阅与分销 | 独立 Sub2API | 内建 | 内建 | 简版 |
| 数据存储 | Postgres + Redis | SQLite / MySQL + Redis | SQLite / MySQL + Redis | 内存 |
| 反向代理 | 自带 Nginx 镜像 | 需自配 | 需自配 | 需自配 |
| 上游适配 | OpenAI 兼容 | OpenAI 兼容 | OpenAI 兼容 | 多家国产模型 |
| 文档与脚本 | 9 份 docs + 3 份脚本 | README + Releases | README + Releases | ReadTheDocs |
| 适用规模 | 中小团队私有化 | 个人 / 小团队 | 个人 / 小团队 | 学习与脚本 |
By the numbers:42+ 上游服务,84+ 聊天模型,42+ 兼容 API 路由,8+ 模型供应商,247.6M 周 Token 用量,9 份 docs 文档,3 份部署脚本,26 个仓库文件,1.5MB 源码体积。