CPA + NewAPI 部署教程:反代订阅账号,统一汇集和分发 Token

前面已经聊过 sub2apiCPANewAPI 的区别。简单回顾一下:

  • CPA,也就是 CLI Proxy API,主要负责把订阅账号、OAuth 授权或上游 Key 转成可调用的 API。
  • NewAPI 主要负责渠道汇总、Token 分发、用户管理、额度管理和统一出口。

所以这套组合的核心思路就是:

text 复制代码
AI 订阅账号 / 上游 Key -> CPA -> NewAPI -> 客户端 / 用户 / 项目

也可以理解为:

  • CPA 负责"把账号能力反代出来"。
  • NewAPI 负责"把不同渠道统一管理,再分发 API Key"。

提醒:本文仅用于管理自己合法持有的账号、订阅和 API 资源。请遵守对应平台的服务条款,不要用于违规共享、倒卖或滥用。

项目地址:

text 复制代码
CLI Proxy API:https://github.com/router-for-me/CLIProxyAPI
NewAPI:https://github.com/QuantumNous/new-api

一、部署前准备

本文以 Docker Compose 部署为主,适合新手直接照着做。

服务器建议:

  • 系统:Ubuntu 20.04+
  • Docker:20.10+
  • Docker Compose:v2+
  • CPA 默认端口:以 config.yaml 里的 port 为准,常见为 8317
  • NewAPI 默认端口:3000

两个服务可以部署在同一台服务器,也可以分开部署。

二、部署 CPA

1. 克隆项目

bash 复制代码
git clone https://github.com/router-for-me/CLIProxyAPI.git
cd CLIProxyAPI

2. 准备配置文件

复制示例配置:

bash 复制代码
cp config.example.yaml config.yaml

Windows 用户如果是在本地操作,可以使用:

powershell 复制代码
copy config.example.yaml config.yaml

然后编辑配置文件:

bash 复制代码
vim config.yaml

如果不习惯 vim,也可以用:

bash 复制代码
nano config.yaml

3. 修改 CPA 关键配置

这里最重要的是三个地方。

第一,确认服务端口:

yaml 复制代码
port: 8317

这个端口后面访问 CPA 后台、接入 NewAPI 时都会用到。你也可以改成其他端口,但要记住最终使用的是哪个端口。

第二,开启远程管理后台,并设置后台登录密钥:

yaml 复制代码
remote-management:
  allow-remote: true
  secret-key: "这里改成你的管理后台密码"

这里要注意:

  • allow-remote: true 表示允许从服务器外部访问管理后台。
  • secret-key 是 CPA 管理后台的登录密钥,不是给 NewAPI 调用的 API Key。

第三,配置 CPA 对外提供的 API Key:

yaml 复制代码
api-keys:
  - "这里改成给 NewAPI 使用的 CPA_API_KEY"

这个 api-keys 才是后面 NewAPI 创建渠道时要填写的密钥。

如果你后面准备在 CPA 后台里创建 API Key,也可以先保留默认配置,等后台登录后再删除旧 Key、创建新 Key。

三、启动 CPA 服务

推荐直接使用 Docker Compose 启动:

bash 复制代码
docker compose up -d

查看容器状态:

bash 复制代码
docker compose ps

查看日志:

bash 复制代码
docker compose logs -f

如果你使用的是官方脚本或当前版本把日志写到了文件里,也可以查看:

bash 复制代码
tail -f ./logs/main.log

启动成功后,浏览器打开:

text 复制代码
http://你的服务器IP:CPA端口/management.html

例如:

text 复制代码
http://你的服务器IP:8317/management.html

输入刚才在 remote-management.secret-key 里设置的管理密钥登录后台。

四、在 CPA 中登录 AI 账号

进入 CPA 后台后,找到 OAuth 登录入口,按页面提示登录你的 AI 账号。

如果你是在远程 VPS 上部署 CPA,OAuth 回调有时会遇到 localhost 回调问题。遇到这种情况,可以按 CPA 官方教程使用 SSH Tunnel 完成授权。

账号授权完成后,进入:

text 复制代码
配置面板 -> 认证配置

建议删除默认的 API Key,然后创建一个新的 API Key。这个 Key 后面会填到 NewAPI 的渠道配置里。

改完配置后,记得点击页面底部的"保存"。这一步很容易漏掉。

到这里,CPA 这一层就配置完成了。

它现在的作用是:把你的订阅账号或上游凭证转换成一个可访问的 API 服务。

五、部署 NewAPI

接下来部署 NewAPI,用它来统一接入 CPA,并对外分发自己的 API Key。

1. 克隆项目

bash 复制代码
git clone https://github.com/QuantumNous/new-api.git
cd new-api

2. 检查 Docker Compose 配置

官方仓库已经提供了 docker-compose.yml,可以先打开看一下:

bash 复制代码
nano docker-compose.yml

个人测试可以先使用默认配置。生产或长期使用时,建议至少关注这几项:

  • 3000:3000:NewAPI 默认访问端口。
  • SQL_DSN:默认 compose 通常会使用 PostgreSQL,生产环境要修改默认数据库密码。
  • REDIS_CONN_STRING:默认 compose 通常会带 Redis,生产环境要修改默认 Redis 密码。
  • ./data./logs:NewAPI 本地数据和日志目录。
  • pg_data:PostgreSQL 的 Docker volume,备份时不要漏掉。
  • SESSION_SECRET:多节点部署时必须设置。

如果只是测试可以先跑起来;如果准备长期使用,建议先把 docker-compose.yml 里的默认密码改掉,再启动服务。

3. 启动 NewAPI

bash 复制代码
docker-compose up -d

如果你的环境使用 Docker Compose v2,也可以写成:

bash 复制代码
docker compose up -d

部署完成后,浏览器打开:

text 复制代码
http://你的服务器IP:3000

第一次访问会进入初始化页面,按提示创建管理员账号即可。

初始化完成后,登录 NewAPI 后台。

六、在 NewAPI 中接入 CPA 渠道

进入:

text 复制代码
渠道管理 -> 添加渠道

渠道类型选择 OpenAI 兼容或当前版本页面中适合 CPA 的类型。

关键配置如下:

text 复制代码
渠道名称:自定义,例如 CPA-Codex
API 地址:http://你的CPA服务器IP:CPA端口
密钥:CPA 里创建的 API Key
模型:按你的 CPA 实际支持模型填写

如果 CPA 和 NewAPI 部署在同一台服务器,也可以用内网地址或 Docker 网络地址,但新手直接填服务器 IP 更直观。

提交后点击测试。如果提示价格模型还没有配置,不代表渠道一定失败,只是 NewAPI 还不知道这个模型该怎么计费。

七、配置模型价格

进入 NewAPI 的模型价格或倍率配置页面,添加刚才渠道里使用的模型。

你需要保证两边模型名称一致:

text 复制代码
CPA 输出的模型名 = NewAPI 渠道里填写的模型名 = 价格配置里的模型名

如果名字不一致,常见结果就是渠道测试失败、请求找不到模型,或者计费异常。

配置完成后,回到渠道管理再次测试。

能正常返回测试结果,就说明 NewAPI 已经成功接入 CPA。

八、给用户充值额度

NewAPI 创建出来的 Key 会走 NewAPI 自己的额度体系。

如果当前用户没有余额,即使渠道正常,也可能无法调用。所以需要先给自己的账号充值一点额度。

进入用户管理或钱包相关页面,给当前账号添加余额。

九、创建 NewAPI Key

进入令牌或 API Key 管理页面,创建一个新的 API Key。

这个 Key 才是最终给 Codex、Cherry Studio 或其他客户端使用的 Key。

到这里,完整链路就跑通了:

text 复制代码
AI 账号 -> CPA -> NewAPI 渠道 -> NewAPI Key -> 客户端

十、客户端接入方式

在 Codex、Cherry Studio 或其他支持自定义 API 地址的客户端里,填写 NewAPI 的地址和 Key。

如果没有配置域名:

text 复制代码
Base URL:http://你的NewAPI服务器IP:3000
API Key:NewAPI 创建的 Key

如果已经配置了域名和 HTTPS:

text 复制代码
Base URL:https://你的域名
API Key:NewAPI 创建的 Key

注意,这里填的是 NewAPI 的地址,不是 CPA 的地址。

CPA 是上游反代层,NewAPI 才是最终对外分发层。

十一、常见问题

1. NewAPI 测试渠道失败怎么办?

按这个顺序排查:

  1. NewAPI 服务器能不能访问 CPA 地址。
  2. CPA 的端口是否放行。
  3. NewAPI 渠道里填的 API Key 是否是 CPA 的 api-keys,而不是后台 secret-key
  4. 模型名称是否和 CPA 输出一致。
  5. NewAPI 是否已经配置对应模型价格。

2. CPA 后台打不开怎么办?

先确认 CPA 容器是否正常:

bash 复制代码
docker compose ps

再确认 config.yaml 中是否已经开启:

yaml 复制代码
remote-management:
  allow-remote: true

同时检查服务器防火墙和云安全组是否放行 CPA 端口。

3. 客户端应该填 CPA 地址还是 NewAPI 地址?

最终客户端填 NewAPI 地址。

CPA 是上游渠道,NewAPI 是统一出口。除非你只是个人临时测试,否则客户端不建议直接连 CPA。

4. 可以接入其他上游渠道吗?

可以。

NewAPI 本身支持接入多种上游渠道。如果你还有其他 API Key、公益站账号或兼容 OpenAI 格式的服务,也可以继续添加到 NewAPI 里统一管理。

总结

这套方案的核心价值是分层:

text 复制代码
CPA 负责反代账号能力
NewAPI 负责汇总渠道和分发 Token

如果只是自己快速使用,单独用一个工具也能跑。但如果你有多个账号、多个上游来源,或者想把 Token 分发给不同客户端、项目或团队成员,CPA + NewAPI 会更适合长期维护。

相关推荐
GuiltyFet3 小时前
【无标题】
安全·ai
星辰徐哥4 小时前
AI时代最容易上手的5个副业,月入5000+
人工智能·ai·chatgpt·工具·副业·ai副业
星辰徐哥4 小时前
AI辅助编程入门:大模型写代码靠谱吗
人工智能·ai·大模型·编程
豆豆6 小时前
AI时代CMS选型:PageAdmin、WordPress等主流系统深度对比评测
ai·cms·建站系统·建站平台·自助建站·内容管理系统·网站管理系统
YuTaoShao6 小时前
Agent = Model + Harness:Cursor 如何持续打磨 AI 编程体验?
人工智能·ai·agent·harness
Swift社区7 小时前
OpenClaw:AI 多线程时代的开始
人工智能·ai·openclaw
笨蛋©8 小时前
2026年制造业数字化质量管理实务:从图纸识别到检验计划自动化
ai·cad·质量管理·制造业·图纸识别
程序员阿斌哥8 小时前
n8n 使用nginx 在公网上部署,现在进入工作流一直连接已丢失!如何解决?
ai
玉&心9 小时前
我花了一个周末写了个 IE浏览器(Microsoft edge) 扩展:划词 AI 总结,支持流式输出和多语言
ai·edge·开源软件·edge浏览器·ai写作