前言:
CLIProxyAPI 是一个 将 Gemini CLI、Antigravity、ChatGPT Codex、Claude Code、Grok Build 等 CLI 工具包装成 OpenAI/Gemini/Claude 兼容 API 服务 的开源项目。 它支持多账号负载均衡、流式输出、函数调用等高级特性,同时内置网页管理面板,适合小白通过 Web 界面统一管理配置。 我们将使用 Docker 方式部署 CLIProxyAPI(官方主镜像,已内置管理面板)。
我们可以通过 CPA 反代后在各个应用中调用各个 AI 厂家的大模型 token
【比如openai官方给的codex额度不够用了,我们可以直接调用别家的token接入codex后接着用,或者接入vscode等等,当然也可以接入不止一个账号,这样就是做中转站的商家所谓的“号池”了,本文提供教程仅对个人使用者适用,中转站的相关操作这里不做展开】
一、加SWAP(新手忽略)
注意:此步骤新手可直接跳过,直接进行第二步
若服务器内存 ≤ 1G 可添加 swap虚拟内存,一般为内存的 1-2 倍即可
设置 SWAP 可以用脚本:
wget -O box.sh https://raw.githubusercontent.com/BlueSkyXN/SKY-BOX/main/box.sh && chmod +x box.sh && clear && ./box.sh
填写18后,选择1,填写2048或者1024,然后回车
二、更新工具
直接从这里开始输入代码就行
2.1、切换到 root 用户
sudo -i
2.2、升级 packages
apt update -y
2.3、安装常用的工具
apt install wget curl sudo vim git -y
这些工具用于:
| 工具 | 作用 |
|---|---|
| wget | 下载文件 |
| curl | 网络请求 |
| vim | 文本编辑 |
| git | 下载项目 |
三、安装 Docker 环境(非大陆)
此步为非大陆vps安装docker的步骤,
大陆服务器的 三、四 步骤请划至最下面 1.7、补充
3.1、安装
curl -fsSL https://get.docker.com | bash
3.2、查看 docker 版本
docker -v
如果出现类似:
Docker version 22.xx
说明安装成功。
3.3、设置开机自动启动
systemctl enable docker
四、安装 Docker-compose(非大陆)
4.1、安装 compose 插件
apt install docker-compose-plugin -y
Docker Compose 用于 管理多个容器服务。
例如这些都可以通过一个配置文件统一启动。
Halo
MySQL
Redis
4.2、查看版本
docker compose version #查看 docker compose 版本
4.3、修改 Docker 配置(可选,新手忽略并跳过此步)
增加一段自定义内网 IPv6 地址,开启容器的 IPv6 功能,以及限制日志文件大小,防止 Docker 日志塞满硬盘
cat > /etc/docker/daemon.json <<EOF
{
"log-driver": "json-file",
"log-opts": {
"max-size": "20m",
"max-file": "3"
},
"ipv6": true,
"fixed-cidr-v6": "fd00:dead:beef:c0::/80",
"experimental":true,
"ip6tables":true
}
EOF
4.4、重启docker
systemctl restart docker
五、安装项目(以CLI-Proxy-API为例)5.1、创建目录
如果小伙伴需要安装其他项目如 Halo、Memos、WordPress 等,主页搜索对应文章关键词。
先创建项目
mkdir -p /root/data/docker_data/cli-proxy-api
目录说明:
这样未来安装多个项目时目录不会混乱。
/root
└─ data
└─ docker_data
└─ cli-proxy-api
5.2、进入目录
cd /root/data/docker_data/cli-proxy-api
5.3、下载并修改配置文件(config.yaml)
curl -o config.yaml https://raw.githubusercontent.com/router-for-me/CLIProxyAPI/main/config.example.yaml
使用 nano 编辑器修改配置:
nano config.yaml
需修改处(仅2处,其他保持默认):
- 找到 remote-management: 部分(文件靠前位置),将 allow-remote: false 修改为 allow-remote: true(开启远程 Web 管理面板访问)。
- 在同一部分,将 secret-key: "" 修改为你自己设置的强密码(建议 16 位以上,包含大小写字母+数字+符号)。
💡 Nano 编辑器小贴士:
- 粘贴内容: 在终端点击鼠标右键,或使用快捷键 Shift + Insert。
- 保存修改: 按 Ctrl + O,然后按 Enter 确认文件名。
- 退出编辑器: 按 Ctrl + X。
- 注意: 如果你对文件做了改动,退出时会询问是否保存,输入 y (Yes) 即可。
⚠️ 重要提醒:YAML 对缩进极其敏感!allow-remote 和 secret-key 两行必须保持与官方示例完全一致的缩进(前面空格数量不能多也不能少),否则启动后访问管理面板会报 502 错误。
5.4、配置 docker-compose.yml
nano docker-compose.yml
nano 编辑器输入以下内容(可直接复制粘贴):
services:
cli-proxy-api:
image: eceasy/cli-proxy-api:latest # 官方最新主镜像(已内置管理面板)
pull_policy: always # 每次启动都检查更新最新镜像
container_name: cli-proxy-api
ports:
- "8317:8317" # Web 管理面板端口(必须开放)
- "8085:8085" # API 服务端口
- "1455:1455" # 其他内部端口(官方推荐全部映射)
- "54545:54545"
- "51121:51121"
- "11451:11451"
volumes:
- ./config.yaml:/CLIProxyAPI/config.yaml # 挂载配置文件
- ./auths:/root/.cli-proxy-api # 挂载认证数据目录
- ./logs:/CLIProxyAPI/logs # 挂载日志目录
environment:
- TZ=Asia/Shanghai # 设置容器时区为上海
restart: unless-stopped # 容器异常退出时自动重启
保存按 Ctrl + O,然后按 Enter 确认 退出按 Ctrl + X
5.5、启动项目
docker compose up -d
5.6、查看启动状态
docker compose ps
正常启动后会显示类似以下信息(重点看 STATUS 为 Up):
正常启动后会显示类似以下信息:
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
cli-proxy-api-plus eceasy/cli-proxy-api-plus:latest "./CLIProxyAPIPlus" cli-proxy-api X minutes ago Up X minutes 0.0.0.0:8317->8317/tcp
5.7、完成
此时需确保 VPS 防火墙/安全组已开放 8317 端口(参考第1-4章 Docker 环境部署时的防火墙操作)。
打开浏览器,输入 http://你的VPS_IP:8317/management.html 即可访问 Web 管理界面。
【若为国外vps但你挂的香港节点可能访问不上,可切换到美国节点】
进入界面后输入你在 config.yaml 中设置的 secret-key 即可登录。
到这 CLIProxyAPI 的 Docker 部署和基本访问步骤已经完成 下面 六、七 俩章节为进阶操作(购买域名 + Nginx Proxy Manager 反向代理)。
六、项目入门
看视频:
1、Antigravity【反重力】
https://antigravity.google/download
反重力outh授权失败
本地电脑登录不上解决工具:
https://github.com/Draculabo/A/releases/tag/v0.5.0
2、Grok反代【X_Ai】
docker compose exec cli-proxy-api /CLIProxyAPI/CLIProxyAPI --xai-login --no-browser
得到【每个人不一样】
https://auth.x.ai/oauth2/authorize?client_id=b1a1192-073a-47ea-816f-4c329312828&code_challenge=dtq21espKivy2-K7FxluanxiedevWxhahahar31gxxvNY&code_challenge_method=S256&1ce=ca7de58413fbe60925653598accfc1lan=generic&redirect_uri=http%3A%2F%221212.0.0.1%3A56121%2Fcallback&referrer=cli-proxy-api&response_type=code&scope=openid+profile+email+offline_access+grok-cli%3Aaccess+api%3A123s&state=071bd6c3c8b212142ce3585ed2800
将上述链接粘贴回浏览器,授权登录后出现下面界面后
复制回调的URL粘贴会vps即可
七、购买域名+域名托管
7.1、购买域名
刚开始完vps可以只买 .top 后缀的,仅仅需要1美元1年(优惠码:rckin)
可点击前往 namesilo 购买,点击链接购买我可以拿到一点奖励分成,感谢各位小伙伴的支持
购买教程:点击链接视频滑动到视频第3步即可:哔哩哔哩 ,YouTube
7.2、域名托管到cloud flare
托管步骤点击视频链接 哔哩哔哩视频 看7分05秒
cloud flare注册官网:https://dash.cloudflare.com/sign-up
namesilo主页:NS主页
八、域名反代(安装Nginx)
8.1、安装 Nginx Proxy Manager
购买完域名和让域名托管在cloud flare后,我们终于可以回到moabxterm了
现在开始给 VPS 安装 Nginx Proxy Manager 进行域名的反向代理(即将 域名 指向 ip+端口 )
8.1.1、创建文件夹目录
mkdir -p /root/data/docker_data/npm
8.1.2、进入文件夹
cd /root/data/docker_data/npm
8.1.3、配置
nano docker-compose.yml
8.1.4、nano输入①或者②:
①自带拉取当下最新版
services:
app:
image: 'jc21/nginx-proxy-manager:latest' # 使用 latest 以获取最新的安全更新和维护工具
container_name: npm
restart: unless-stopped
ports:
- '80:80' # HTTP 流量
- '443:443' # HTTPS 流量
- '81:81' # 管理后台端口
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
②目前稳定版已更新到 2.13.7 (2026.03.09)
services:
app:
image: jc21/nginx-proxy-manager:2.11.3 #如需升级,请手动修改版本号并重新 docker compose pull
restart: unless-stopped
ports:
- '80:80' # 保持默认即可,不建议修改左侧的80
- '81:81' # 冒号左边可以改成自己服务器未被占用的端口
- '443:443' # 保持默认即可,不建议修改左侧的443
volumes:
- ./data:/data # 冒号左边可以改路径,现在是表示把数据存放在在当前文件夹下的 data 文件夹中
- ./letsencrypt:/etc/letsencrypt # 冒号左边可以改路径,现在是表示把数据存放在在当前文件夹下的 letsencrypt 文件夹中
💡 Nano 编辑器小贴士:
- 粘贴内容: 在终端点击鼠标右键,或使用快捷键
Shift + Insert。- 保存修改: 按
Ctrl + O,然后按Enter确认文件名。- 退出编辑器: 按
Ctrl + X。- 注意: 如果你对文件做了改动,退出时可能询问是否保存,输入
y(Yes) 即可。
8.1.5、配置启动
docker compose up -d
8.2、打开 Nginx
此时我们可通过浏览器 http://vps_ip:81 访问 NPM 面板 如 http://102.171.142.32:81
⚠️ 补充(小白暂时别看这句话):生产环境建议不要长期对公网暴露 81 管理端口,域名配置完成后可关闭,可将'81:81'改为'127.0.0.1:81:81',后续访问NPM可通过走 SSH 隧道:ssh -L 81:127.0.0.1:81 root@你的VPS_IP,然后再浏览器http://localhost:81 。
通过 http://vps_ip:81 访问 Nginx 面板后
1、登录
默认登录账号密码:
默认Email: [email protected] #记得改
默认Password: changeme #记得改
2、添加代理主机
3、添加域名,开启ip代理
4、启动https协议,添加证书,搞定!
此时任何人点击你的域名(如 rckin.com) 即可访问所搭建的网站了
十、配件文档:
CPA-github项目地址:https://github.com/router-for-me/CLIProxyAPI
CPA官网指南:https://help.router-for.me/introduction/quick-start.html
评论区