{"id":316,"date":"2026-03-23T08:44:40","date_gmt":"2026-03-23T00:44:40","guid":{"rendered":"https:\/\/bk.avfun.eu.org\/?p=316"},"modified":"2026-03-23T08:44:41","modified_gmt":"2026-03-23T00:44:41","slug":"%e5%9c%a8vps%e4%b8%8a%e7%94%a8docker%e9%83%a8%e7%bd%b2cliproxyapipluscpa-plus%e5%85%8d%e8%b4%b9%e8%ae%a9openclaw%e4%bd%bf%e7%94%a8-gemini-2-5-pro%e3%80%81claude-%e5%92%8c-qwen%e7%ad%89%e6%a8%a1","status":"publish","type":"post","link":"https:\/\/bk.avfun.eu.org\/?p=316","title":{"rendered":"\u5728VPS\u4e0a\u7528Docker\u90e8\u7f72CLIProxyAPIPlus(CPA-PLUS)\u514d\u8d39\u8ba9OpenClaw\u4f7f\u7528 Gemini 2.5 Pro\u3001Claude \u548c Qwen\u7b49\u6a21\u578b"},"content":{"rendered":"<pre>\u524d\u8a00\r\n\u5728 AI \u5927\u6a21\u578b\u5feb\u901f\u53d1\u5c55\u7684\u4eca\u5929\uff0c\u8d8a\u6765\u8d8a\u591a\u7684\u5f00\u53d1\u8005\u5e0c\u671b\u901a\u8fc7\u7edf\u4e00\u7684 API \u63a5\u53e3\u6765\u8c03\u7528\u4e0d\u540c\u5382\u5546\u7684\u6a21\u578b\uff0c\u4f8b\u5982 Gemini\u3001Claude\u3001GPT \u4ee5\u53ca Qwen \u7b49\u3002\u4f46\u4e0d\u540c\u5e73\u53f0\u4e4b\u95f4\u7684\u63a5\u53e3\u6807\u51c6\u5e76\u4e0d\u5b8c\u5168\u4e00\u81f4\uff0c\u8fd9\u4e5f\u7ed9\u5f00\u53d1\u548c\u96c6\u6210\u5e26\u6765\u4e86\u4e00\u5b9a\u7684\u590d\u6742\u5ea6\u3002\r\n\r\nCLIProxyAPI \u6b63\u662f\u4e3a\u4e86\u89e3\u51b3\u8fd9\u4e00\u95ee\u9898\u800c\u8bde\u751f\u7684\u5f00\u6e90\u9879\u76ee\u3002\u5b83\u901a\u8fc7\u5c01\u88c5 Gemini CLI\u3001Antigravity\u3001ChatGPT Codex\u3001Claude Code\u3001Qwen Code \u4ee5\u53ca iFlow \u7b49\u5de5\u5177\uff0c\u5c06\u5b83\u4eec\u7edf\u4e00\u8f6c\u6362\u4e3a \u517c\u5bb9 OpenAI \/ Gemini \/ Claude \/ Codex \u7684 API \u670d\u52a1\u3002\u8fd9\u6837\u4e00\u6765\uff0c\u5f00\u53d1\u8005\u53ea\u9700\u8c03\u7528\u7edf\u4e00\u683c\u5f0f\u7684 API\uff0c\u5c31\u53ef\u4ee5\u5728\u81ea\u5df1\u7684\u5e94\u7528\u4e2d\u4f7f\u7528 Gemini 2.5 Pro\u3001GPT-5\u3001Claude\u3001Qwen \u7b49\u6a21\u578b\u80fd\u529b\u3002\r\n\r\n\u800c\u5728 CLIProxyAPI \u7684\u57fa\u7840\u4e4b\u4e0a\uff0c\u793e\u533a\u53c8\u63a8\u51fa\u4e86 CLIProxyAPIPlus \u7248\u672c\u3002Plus \u7248\u672c\u5728\u4fdd\u6301\u4e3b\u7ebf\u9879\u76ee\u529f\u80fd\u548c\u66f4\u65b0\u540c\u6b65\u7684\u540c\u65f6\uff0c\u989d\u5916\u589e\u52a0\u4e86\u5bf9\u7b2c\u4e09\u65b9 AI \u63d0\u4f9b\u5546\u7684\u652f\u6301\uff0c\u8ba9\u53ef\u63a5\u5165\u7684\u6a21\u578b\u6765\u6e90\u66f4\u52a0\u4e30\u5bcc\u3002\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u8fd9\u4e9b\u7b2c\u4e09\u65b9\u63d0\u4f9b\u5546\u7684\u652f\u6301\u4e3b\u8981\u7531\u793e\u533a\u8d21\u732e\u8005\u7ef4\u62a4\uff0c\u5982\u679c\u5728\u4f7f\u7528\u8fc7\u7a0b\u4e2d\u9047\u5230\u95ee\u9898\uff0c\u901a\u5e38\u9700\u8981\u8054\u7cfb\u5bf9\u5e94\u7684\u793e\u533a\u7ef4\u62a4\u8005\u8fdb\u884c\u89e3\u51b3\u3002\r\n\r\n\u5728\u672c\u7bc7\u6559\u7a0b\u4e2d\uff0c\u6211\u4eec\u5c06\u91cd\u70b9\u4ecb\u7ecd \u5982\u4f55\u5728 VPS \u4e0a\u4f7f\u7528 Docker \u5feb\u901f\u90e8\u7f72 CLIProxyAPIPlus\u3002\u901a\u8fc7\u7b80\u5355\u7684\u51e0\u6b65\u914d\u7f6e\uff0c\u5c31\u53ef\u4ee5\u5728\u670d\u52a1\u5668\u4e0a\u642d\u5efa\u4e00\u4e2a \u517c\u5bb9\u591a\u79cd\u4e3b\u6d41 AI \u63a5\u53e3\u6807\u51c6\u7684 API \u670d\u52a1\uff0c\u65b9\u4fbf\u5728\u5404\u79cd\u5e94\u7528\u3001\u811a\u672c\u6216 AI \u5de5\u5177\u4e2d\u8fdb\u884c\u8c03\u7528\u3002\r\n\r\n\u9879\u76ee\u7b80\u4ecb\r\nCLIProxyAPI\u9879\u76ee\uff1a\r\n\u5c06 Gemini CLI\u3001Antigravity\u3001ChatGPT Codex\u3001Claude Code\u3001Qwen Code \u548c iFlow \u5c01\u88c5\u6210\u4e0e OpenAI\/Gemini\/Claude\/Codex \u517c\u5bb9\u7684 API \u670d\u52a1\uff0c\u8ba9\u60a8\u53ef\u4ee5\u901a\u8fc7 API \u514d\u8d39\u4f7f\u7528 Gemini 2.5 Pro\u3001GPT 5\u3001Claude \u548c Qwen \u6a21\u578b\u3002\r\n\r\nCLIProxyAPIPlus\u9879\u76ee\uff1a\r\n\u8fd9\u662fCLIProxyAPI\u7684 Plus \u7248\u672c\uff0c\u5728\u4e3b\u7ebf\u9879\u76ee\u7684\u57fa\u7840\u4e0a\u589e\u52a0\u4e86\u5bf9\u7b2c\u4e09\u65b9\u63d0\u4f9b\u5546\u7684\u652f\u6301\u3002\r\n\u6240\u6709\u7b2c\u4e09\u65b9\u63d0\u4f9b\u5546\u7684\u652f\u6301\u5747\u7531\u793e\u533a\u8d21\u732e\u8005\u7ef4\u62a4\uff1bCLIProxyAPI \u4e0d\u63d0\u4f9b\u6280\u672f\u652f\u6301\u3002\u5982\u679c\u60a8\u9700\u8981\u5e2e\u52a9\uff0c\u8bf7\u8054\u7cfb\u76f8\u5e94\u7684\u793e\u533a\u7ef4\u62a4\u8005\u3002\r\nPlus \u7248\u672c\u4e0e\u4e3b\u7ebf\u7248\u672c\u4fdd\u6301\u540c\u6b65\u66f4\u65b0\r\n\r\nhttps:\/\/help.router-for.me\/cn\/\r\n\r\n\r\n\u6709\u5173\u622a\u56fe\r\nOAuth \u767b\u5f55\u9875\u9762\r\n\r\n\r\n\u6a21\u578b\u5c55\u793a\u9875\u9762\r\n\r\n\r\n\u7ba1\u7406\u4e2d\u5fc3\r\n\r\n\r\nAPI\u79d8\u94a5\r\n\r\n\r\n\u8def\u7531\u7b56\u7565\r\n\r\n\r\n\u9ed8\u8ba4\u4f7f\u7528\u8f6e\u8be2\u7b56\u7565\uff0c\u6211\u4eec\u53ef\u4ee5\u6dfb\u52a0\u591a\u4e2a\u8d26\u53f7\uff0c\u8fd9\u8fb9\u4f1a\u8f6e\u8be2\u4f7f\u7528\uff0c\u907f\u514d\u67d0\u4e00\u4e2a\u8d26\u53f7\u88ab\u9650\u5236\r\n\r\n\u914d\u5408\u7b2c\u4e09\u65b9AI\u5de5\u5177\u4f7f\u7528\r\nCherry Studio\u4f7f\u7528\r\n\u914d\u7f6e\u754c\u9762\r\n\r\n\r\n\u4f7f\u7528\u754c\u9762\r\n\r\n\r\nopenclaw\u4f7f\u7528\r\n\r\n\r\nAPI Base URL\r\n\u53c2\u8003\u4ee5\u4e0b\u683c\u5f0f\r\n\r\nhttp:\/\/192.168.223.50:8317\/v1\r\n\u90e8\u7f72\u65b9\u6cd5\r\n\u4f7f\u7528Docker\u5b89\u88c5\r\n\u672c\u6559\u7a0b\u4e3b\u8981\u6f14\u793a\u4f7f\u7528docker\u7684\u65b9\u5f0f\u5b89\u88c5\u90e8\u7f72,\u7b80\u5355\u4fbf\u6377\r\n\r\n\r\n\u51c6\u5907\u6761\u4ef6\r\n1\uff09\u4e00\u53f0\u670d\u52a1\u5668\r\n\u6211\u4eec\u4f7f\u7528\u83b1\u5361\u4e91\u670d\u52a1\u5668\u6765\u6f14\u793a\uff0c\u6211\u4eec\u9009\u62e9\u9999\u6e2fVPS\u4e3b\u8981\u662f\u7f51\u7edc\u539f\u56e0\uff0c\r\n\u9700\u8981vps\u7684\u53ef\u4ee5\u770b\u4ee5\u4e0b\u4fe1\u606f\uff0c\u914d\u7f6e\u53ef\u4ee5\u53c2\u8003\u4ee5\u4e0b\u8d44\u6e90\u5360\u7528\u60c5\u51b5\r\n\u83b1\u5361\u4e91\r\n\u672c\u671fdocker\u5bb9\u5668\u5360\u7528\u8d44\u6e90\u60c5\u51b5\u5982\u4e0b\u4ec5\u4f9b\u53c2\u8003,\u5185\u5b58\u5360\u7528\u5927\u7ea680M\r\n\r\n\r\n2\uff09\u672c\u6559\u7a0b\u4f7f\u7528\u5230\u7684\u9879\u76ee\r\n\u672c\u6559\u7a0b\u4f7f\u7528\u7684\u5b98\u65b9github\u5730\u5740\r\n\r\nCLIProxyAPI\u9879\u76ee\r\nhttps:\/\/github.com\/router-for-me\/CLIProxyAPI\r\n\u76ee\u524d\u670916.8k stars\r\n\r\n\r\nCLIProxyAPIPlus\u9879\u76ee\r\nhttps:\/\/github.com\/router-for-me\/CLIProxyAPIPlus\r\n\u76ee\u524d\u67091.7k stars\r\n\r\n\r\n3\uff09\u57df\u540d\r\n\u5c3d\u91cf\u7ed1\u5b9a,\u4e0d\u7136\u4e0d\u5b89\u5168\r\n\r\n\u4e00\u3001Docker\u73af\u5883\u90e8\u7f72\r\n\u5728vps\u5b89\u88c5docker\u548cdocker-compose\r\nDocker\u5b98\u65b9\u5b89\u88c5\u6587\u6863\uff08\u82f1\u6587\uff09\r\nhttps:\/\/duan.yyzq.eu.org\/docker-001\r\nDocker-Compose\u5b98\u65b9\u5b89\u88c5\u6587\u6863\uff08\u82f1\u6587)\r\nhttps:\/\/duan.yyzq.eu.org\/docker-002\r\nCentos\u5b89\u88c5Docker\u548cDocker-compose\uff08\u4e2d\u6587\uff09\r\nhttps:\/\/duan.yyzq.eu.org\/\/03\r\nUbuntu\u5b89\u88c5Docker\u548cDocker-compose\uff08\u4e2d\u6587\uff09\r\nhttps:\/\/duan.yyzq.eu.org\/\/04\r\n\r\n==\u63a8\u8350\u76f4\u63a5\u7528\u4e00\u952e\u811a\u672c==\r\n\r\ndocker\u5b89\u88c5\u811a\u672c\r\nbash &lt;(curl -sSL https:\/\/cdn.jsdelivr.net\/gh\/SuperManito\/LinuxMirrors@main\/DockerInstallation.sh)\r\n==\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u67e5\u770bdocker\u7248\u672c==\r\n\r\ndocker --version\r\nDocker version 29.1.3, build f52814d\r\n\r\ndocker-compose\u5b89\u88c5\u811a\u672c\r\ncurl -L \"https:\/\/github.com\/docker\/compose\/releases\/latest\/download\/docker-compose-$(uname -s)-$(uname -m)\" -o \/usr\/local\/bin\/docker-compose &amp;&amp; chmod +x \/usr\/local\/bin\/docker-compose\r\n==\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u67e5\u770bdocker-compose\u7248\u672c==\r\n\r\ndocker-compose --version\r\nDocker Compose version v5.0.1\r\n\r\n\u4e8c\u3001\u90e8\u7f72\u547d\u4ee4\r\n\u767b\u5f55\u670d\u52a1\u5668\u4f7f\u7528root\u8d26\u6237\u6267\u884c\u4ee5\u4e0b\u6b65\u9aa4\r\n\r\ndocker-compose\u547d\u4ee4\r\n\u521b\u5efa\u4e00\u4e2a\u76ee\u5f55\uff0c\u5e76\u8fdb\u5165\u6b64\u76ee\u5f55\r\n\r\nmkdir cpa-plus; cd  cpa-plus\r\n\u4e0b\u8f7dconfig.yaml\u6587\u4ef6\r\n\r\ncurl -o config.yaml https:\/\/raw.githubusercontent.com\/router-for-me\/CLIProxyAPIPlus\/main\/config.example.yaml\r\n\u4fee\u6539config\r\n1\u3001remote-management\u4e0b\u7684allow-remote\u4e3atrue\r\n2\u3001remote-management\u4e0b\u7684secret-key\u8f93\u5165\u5bc6\u7801\r\n\r\nvim config.yaml\r\n\r\n\r\n\u5176\u4ed6\u90fd\u4e0d\u8981\u52a8\r\n\r\n\u7136\u540e\u518d\u65b0\u5efadocker-compose.yml\r\n\r\nvim docker-compose.yml\r\nservices:\r\n  cli-proxy-api:\r\n    image: eceasy\/cli-proxy-api-plus:latest        # \u4f7f\u7528\u7684Docker\u955c\u50cf\uff08cli-proxy-api-plus\u7248\u672c\uff09\r\n    container_name: cli-proxy-api-plus             # \u5bb9\u5668\u540d\u79f0\r\n    ports:\r\n      - \"8317:8317\"                               # \u7aef\u53e3\u6620\u5c04\uff1a\u5bbf\u4e3b\u673a8317 -&gt; \u5bb9\u56688317\r\n    volumes:\r\n      - .\/config.yaml:\/CLIProxyAPI\/config.yaml     # \u6302\u8f7d\u914d\u7f6e\u6587\u4ef6\uff08\u672c\u5730config.yaml\u6620\u5c04\u5230\u5bb9\u5668\u5185\uff09\r\n      - .\/auths:\/root\/.cli-proxy-api               # \u6302\u8f7d\u8ba4\u8bc1\u6570\u636e\u76ee\u5f55\uff0c\u7528\u4e8e\u4fdd\u5b58\u767b\u5f55\u4fe1\u606f\u7b49\r\n      - .\/logs:\/CLIProxyAPI\/logs                   # \u6302\u8f7d\u65e5\u5fd7\u76ee\u5f55\uff08\u4fdd\u5b58\u5bb9\u5668\u65e5\u5fd7\uff09\r\n    environment:\r\n      - TZ=Asia\/Shanghai                          # \u8bbe\u7f6e\u5bb9\u5668\u65f6\u533a\u4e3a\u4e0a\u6d77\r\n    restart: always                               # \u5bb9\u5668\u5f02\u5e38\u9000\u51fa\u65f6\u81ea\u52a8\u91cd\u542f\r\n\u4e09\u3001\u6267\u884c\u5bb9\u5668\u8fd0\u884c\u547d\u4ee4\r\ndocker-compose up -d  #\u8fd0\u884c\u5bb9\u5668\r\ndocker-compose ps  #\u67e5\u770b\u662f\u5426\u542f\u52a8\u6210\u529f\r\n==\u6b63\u5e38\u542f\u52a8\u5982\u4e0b\u6240\u793a==\r\n\r\ndocker-compose ps  #\u67e5\u770b\u662f\u5426\u542f\u52a8\u6210\u529f\r\nNAME                 IMAGE                              COMMAND               SERVICE         CREATED       STATUS       PORTS\r\ncli-proxy-api-plus   eceasy\/cli-proxy-api-plus:latest   \".\/CLIProxyAPIPlus\"   cli-proxy-api   2 hours ago   Up 2 hours   0.0.0.0:8317-&gt;8317\/tcp\r\n\u56db\u3001web\u754c\u9762\r\n\u6253\u5f00web\u9875\u9762\u4f7f\u7528\r\n\u6210\u529f\u4ee5\u540e\u9700\u8981\u6253\u5f00\u81ea\u5df1\u76f8\u5e94\u7684\u7aef\u53e38317)\u9632\u706b\u5899\u5c31\u53ef\u4ee5web\u7aef\u8bbf\u95ee\u4e86\r\n\r\n\u4e3b\u754c\u9762\r\nhttp:\/\/ip:8317\/management.html\r\n\r\n\r\n\u8fdb\u5165\u754c\u9762\u4e4b\u540e\u8f93\u5165\u81ea\u5df1\u914d\u7f6e\u7684secret-key\u79d8\u94a5\u5c31\u53ef\u4ee5\u767b\u5f55\u4e86\r\n\r\n\u9996\u5148\u6211\u4eecOauth\u767b\u5f55\u4e0b\r\n\r\n\r\n\u6211\u6d4b\u8bd5\u8fd94\u4e2a\u90fd\u53ef\u4ee5\u6b63\u5e38\u767b\u5f55\r\n\u53ef\u4ee5\u6dfb\u52a0\u591a\u4e2a\u8d26\u53f7\r\n\u6211\u4eec\u4ee5Antigravity OAuth\u4e3a\u4f8b\r\n\u70b9\u51fb\u767b\u5f55\r\n\r\n\r\n\u968f\u610f\u767b\u5f55\u4e00\u4e2a\u8c37\u6b4c\u8d26\u53f7\r\n\r\n\r\n\u5c06\u5730\u5740\u680f\u586b\u5165\u5168\u9009\u590d\u5236\u586b\u5165\u4e00\u4e0b\u5730\u5740\u5373\u53ef\u8ba4\u8bc1\r\n\r\n\r\n\u5176\u4ed6\u8d26\u53f7\u90fd\u5927\u540c\u5c0f\u5f02\r\n\u81ea\u884c\u6d4b\u8bd5\r\n\u8fd9\u91cc\u53ef\u4ee5\u770b\u5230\u8d26\u53f7\u6570\u91cf\r\n\r\n\r\n\u56db\u3001\u914d\u5408\u7b2c\u4e09\u65b9AI\u5de5\u5177\u4f7f\u7528\r\n\u6211\u4eec\u9700\u8981\u786e\u8ba43\u4e2a\u503c\r\n1.API Base URL\r\n\u53c2\u8003\u4ee5\u4e0b\u683c\u5f0f\uff08\u670d\u52a1\u5668ip\uff09\r\n\r\nhttp:\/\/192.168.223.50:8317\/v1\r\n2.token\r\n\r\n\r\n\r\n\u8bb0\u5f97\u4fdd\u5b58-\u5426\u5219\u4e0d\u751f\u6548\r\n\r\n\r\n\u7136\u540e\u5176\u4ed6\u5de5\u5177\u914d\u7f6e\u5373\u53ef\r\n3.\u6a21\u578b\u540d\u79f0\r\n\u6309\u56fe\u67e5\u770b\u53ef\u7528\u6a21\u578b\r\n\r\n\r\n\u6bd4\u5982\r\nclaude-opus-4-6-thinking\r\n\r\n4.1Cherry Studio\r\n\u76f4\u63a5\u6309\u56fe\u914d\u7f6e\u5373\u53ef\r\n\r\n\r\n4.2openclaw\r\n\u6309\u8981\u6c42\u586b\u5199\u5373\u53ef\r\n\r\n\r\n\u7ed1\u5b9a\u57df\u540d(\u53ef\u9009)\r\nVPS\u4e0a\u7684\u5efa\u8bae\u7ed1\u5b9a\u4e0b\u57df\u540d\uff0c\u65b9\u4fbf\u516c\u7f51\u4f7f\u7528\r\n\u7ed1\u5b9a\u57df\u540d\u7684\u6559\u7a0b\u53c2\u8003\u4ee5\u4e0b\u5185\u5bb9\r\n\r\n\u7ed1\u5b9a\u57df\u540d\u89c6\u9891\u6559\u7a0b\r\nB\u7ad9\r\nYouTube\r\n\u7ed1\u5b9a\u57df\u540d\u53ef\u4ee5\u53c2\u8003\r\nNginxProxyManager\r\nhttps:\/\/duan.yyzq.eu.org\/\/npm-ch<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u524d\u8a00 \u5728 AI \u5927\u6a21\u578b\u5feb\u901f\u53d1\u5c55\u7684\u4eca\u5929\uff0c\u8d8a\u6765\u8d8a\u591a\u7684\u5f00 &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-316","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/316","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=316"}],"version-history":[{"count":1,"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/316\/revisions"}],"predecessor-version":[{"id":317,"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/316\/revisions\/317"}],"wp:attachment":[{"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=316"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=316"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bk.avfun.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=316"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}