Бесплатное развертывание: ClawCloud (Встроенное хранилище)
Некоторое время назад я опубликовал статью «Five: Docker Server Deployment». Многие пользователи сообщали, что у них нет VPS, и надеялись, что я предоставлю руководство по развертыванию в облачном контейнере.
На самом деле, так как CLIProxyAPI поддерживает развертывание через Docker, оно может беспрепятственно работать в облачном контейнере. Однако при прямом запуске в облачном контейнере возникают две основные проблемы:
- Сохранение файлов конфигурации: Для файла конфигурации, необходимого для запуска программы, облачные контейнеры часто решают это путем сопоставления содержимого конфигурации с конкретным файлом. Хотя это работает, если вы измените файл конфигурации, после перезапуска контейнера все изменения будут потеряны. Такая потеря конфигурации для нас неприемлема.
- Сложная OAuth-аутентификация: Для провайдеров, требующих OAuth-аутентификацию, в Docker-окружении на VPS мы можем перенаправлять результаты callback-аутентификации на сервер через SSH-туннель. Однако чистая среда контейнерного облака обычно не поддерживает SSH-туннели, и для завершения процесса требуется добавление нескольких портов и ручное изменение доменного имени во время callback, что является очень трудоемким процессом.
Поэтому, после того как CLIProxyAPI был обновлен для адаптации к развертыванию в контейнерном облаке, это руководство шаг за шагом покажет вам, как выполнить развертывание в контейнерном облаке. Платформа контейнерного облака, используемая в этом руководстве, — ClawCloud Run. Войдите на платформу через аккаунт Github, зарегистрированный более 180 дней назад, чтобы получать ежемесячный возобновляемый кредит в размере $5. Развернутый нами CLIProxyAPI потребляет всего около $0.05 в день, чего более чем достаточно. Другие облачные платформы контейнеров работают по схожему принципу, пожалуйста, ориентируйтесь на этот процесс при самостоятельном развертывании.
После входа в ClawCloud Run нажмите App Launchpad

Нажмите Create APP

Сначала заполните основную информацию:
- Application Name: Настраиваемое имя, здесь введите
cliproxyapi - Image Name:
eceasy/cli-proxy-api:latest - Network: Измените порт контейнера на
8317и одновременно включите Public Access
Прокрутите страницу вниз, в расширенных настройках необходимо заполнить:
- Command:
/CLIProxyAPI/CLIProxyAPI --config /data/config.yaml - Environment Variables:
DEPLOY=cloud - Local Storage:
/data

На рисунке ниже показано, как заполнить переменные окружения и хранилище
![]() | ![]() |
|---|
После подтверждения правильности заполнения всей информации нажмите Deploy Application в правом верхнем углу, и начнется развертывание приложения
Подождите немного, и приложение будет успешно развернуто. Когда статус Public Address станет Available, соответствующий URL будет тем, который вы используете для доступа к CLIProxyAPI. Пожалуйста, сохраните его для последующего использования.

В ожидании развертывания вы можете сначала подготовить конфигурационный файл config.yaml. Пример, используемый в этот раз, приведен ниже. Обратите внимание: remote-management.secret-key — это ключ для удаленного управления, а api-keys — это ключ, используемый AI-клиентом для подключения к CLIProxyAPI. Будьте внимательны и не путайте их.
port: 8317
remote-management:
allow-remote: true
secret-key: "ABCD-1234"
disable-control-panel: false
auth-dir: "/data/auths"
debug: false
logging-to-file: false
usage-statistics-enabled: false
request-retry: 3
quota-exceeded:
switch-project: true
switch-preview-model: true
api-keys:
- "EFGH-5678"Когда статус контейнера станет Active

Нажмите на кнопку на рисунке, чтобы открыть ранее добавленное Local Storage

Нажмите Upload в правом верхнем углу, выберите файл config.yaml, который вы только что подготовили, и загрузите его

После завершения загрузки нажмите Restart, чтобы перезапустить контейнер

Подождите немного, после того как статус контейнера снова станет Active, вы увидите, что в Local Storage был создан новый файл

В то же время перейдите на вкладку Logs, где вы сможете увидеть информацию логов, как показано на рисунке ниже 

На данный момент CLIProxyAPI успешно завершил весь процесс развертывания.
Использование EasyCLI для удаленной OAuth-аутентификации
Далее мы воспользуемся другим официальным проектом EasyCLI для выполнения удаленного добавления OAuth.
EasyCLI — это вспомогательный проект для CLIProxyAPI, который предоставляет графический пользовательский интерфейс (GUI) для управления CLIProxyAPI. Его главной особенностью является поддержка полного процесса аутентификации и авторизации OAuth (не только загрузка файлов авторизации, но и обработка всего процесса обратного вызова авторизации), что невозможно реализовать через собственный WebUI проекта CLIProxyAPI. Пожалуйста, перейдите на страницу релизов программы EasyCLI, чтобы загрузить версию, подходящую для вашей операционной системы (автор предоставляет версии для Mac, Linux и Windows). В данном руководстве в качестве примера используется версия для Windows x64.
После открытия программы выберите Remote и введите URL, который вы записали ранее.

Введите remote-management.secret-key, установленный в config.yaml, в качестве пароля (в данном примере это ABCD-1234).
Нажмите последовательно Authentication Files -> New.

В этот раз мы снова будем использовать добавление Gemini CLI в качестве примера для демонстрации. Для подготовки, пожалуйста, обратитесь к разделу «Two: Gemini CLI + Codex Hands-on».
Введите Project ID, нажмите Confirm.
Ссылка OAuth появится на странице, нажмите Open Link

Программа автоматически откроет браузер и перейдет по ссылке OAuth, а сама EasyCLI перейдет в состояние приема callback

На открывшейся странице браузера войдите в аккаунт и завершите процесс авторизации и аутентификации

После завершения вы увидите недавно созданный конфигурационный файл в списке Authentication Files

Проверка
Давайте снова протестируем это с помощью Cherry Studio. Как показано на рисунке, заполните API key и API address в соответствии с содержимым конфигурационного файла

Успешно! 
Остальные функции EasyCLI оставлены для вашего самостоятельного изучения. Фактически, за исключением части с OAuth-аутентификацией, остальные функции EasyCLI практически идентичны встроенному в систему WebUI. Вы также можете выполнять другое управление конфигурацией, посетив https://your-CLIProxyAPI-access-link/management.html (для ознакомления с WebUI, пожалуйста, обратитесь к этой статье «Шесть: Любимый GUI новичка», хотя введение там тоже довольно короткое =.=)

