README_CLIProxyAPI_部署说明.md

CLIProxyAPI 部署说明

记录当前中转站的服务器、容器、Cloudflare Tunnel、后台保护和验证方式。

项目:Codex 中转站 公开脱敏版 路由:/deploy

当前状态

  • 服务器:阿里云 Ubuntu 24.04。
  • 部署目录:/opt/cliproxyapi
  • API 服务:CLIProxyAPI
  • 入口方式:Cloudflare Tunnel。
  • 后台保护:Cloudflare Access。
  • 出站代理:已配置应用级 SOCKS5 家宽代理。
  • 旧入口:Caddy 已停用并移除容器。

访问地址

后端 API:
https://api.vsdoex.asia/v1

管理前端:
https://admin.vsdoex.asia/management.html

API Key 与管理密钥不在公开文档中展示,需要在服务器侧查看。

Docker 服务

cli-proxy-api
cli-proxy-api-cloudflared
查看状态:
cd /opt/cliproxyapi
docker compose --env-file .env.cloudflare ps

查看日志:
cd /opt/cliproxyapi
docker compose --env-file .env.cloudflare logs --tail=100 cli-proxy-api
docker compose --env-file .env.cloudflare logs --tail=100 cloudflared

重启服务:
cd /opt/cliproxyapi
docker compose --env-file .env.cloudflare restart

Cloudflare 路由

api.vsdoex.asia   -> http://localhost:8317
admin.vsdoex.asia -> http://localhost:8317
  • admin.vsdoex.asia 受 Cloudflare Access 保护。
  • api.vsdoex.asia 不加 Access。

出站代理

真实账号密码不写入公开文档。

proxy-url: "socks5://***:***@accel.ipflygates.com:5001"
更换代理:
cd /opt/cliproxyapi
bash configure_outbound_proxy.sh

输入格式:
http://用户名:密码@代理主机:端口
socks5://用户名:密码@代理主机:端口

验证命令

测试 API 根路径:
curl https://api.vsdoex.asia

测试模型列表:
curl https://api.vsdoex.asia/v1/models \
  -H "Authorization: Bearer [已脱敏]"

测试聊天接口:
curl https://api.vsdoex.asia/v1/chat/completions \
  -H "Authorization: Bearer [已脱敏]" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-5.4-mini","messages":[{"role":"user","content":"Reply with exactly: ok"}],"max_tokens":10}'

重要文件

/opt/cliproxyapi/docker-compose.yml
/opt/cliproxyapi/config.yaml
/opt/cliproxyapi/.env.cloudflare
/opt/cliproxyapi/DEPLOY_INFO.txt
/opt/cliproxyapi/configure_outbound_proxy.sh
/opt/cliproxyapi/auths/

不要公开:.env.cloudflareDEPLOY_INFO.txtconfig.yamlauths/*.json