Hosting
GCP
Запустите постоянный OpenClaw Gateway на VM GCP Compute Engine с помощью Docker, с долговечным состоянием, встроенными бинарными файлами и безопасным поведением при перезапуске.
Если вам нужен «OpenClaw 24/7 примерно за $5-12/мес.», это надежная схема в Google Cloud. Цена зависит от типа машины и региона; выберите самую маленькую VM, подходящую для вашей нагрузки, и увеличьте ее, если столкнетесь с OOM.
Что мы делаем (простыми словами)?
- Создаем проект GCP и включаем биллинг
- Создаем VM Compute Engine
- Устанавливаем Docker (изолированная среда выполнения приложения)
- Запускаем OpenClaw Gateway в Docker
- Сохраняем
~/.openclaw+~/.openclaw/workspaceна хосте (переживает перезапуски/пересборки) - Получаем доступ к Control UI с ноутбука через SSH-туннель
Это смонтированное состояние ~/.openclaw включает openclaw.json, поагентные
agents/<agentId>/agent/auth-profiles.json и .env.
Доступ к Gateway можно получить через:
- проброс SSH-порта с ноутбука
- прямую публикацию порта, если вы самостоятельно управляете firewall и токенами
В этом руководстве используется Debian на GCP Compute Engine. Ubuntu также подходит; сопоставьте пакеты соответствующим образом. Общий процесс Docker см. в Docker.
Быстрый путь (для опытных операторов)
- Создайте проект GCP и включите Compute Engine API
- Создайте VM Compute Engine (
e2-small, Debian 12, 20 ГБ) - Подключитесь к VM по SSH
- Установите Docker
- Клонируйте репозиторий OpenClaw
- Создайте постоянные каталоги на хосте
- Настройте
.envиdocker-compose.yml - Встройте необходимые бинарные файлы, соберите и запустите
Что вам понадобится
- Аккаунт GCP (e2-micro подходит для бесплатного уровня)
- Установленный gcloud CLI (или Cloud Console)
- SSH-доступ с вашего ноутбука
- Базовое умение пользоваться SSH и копированием/вставкой
- ~20-30 минут
- Docker и Docker Compose
- Учетные данные аутентификации модели
- Необязательные учетные данные провайдеров
- QR WhatsApp
- токен бота Telegram
- Gmail OAuth
Install gcloud CLI (or use Console)
Вариант A: gcloud CLI (рекомендуется для автоматизации)
Установите с https://cloud.google.com/sdk/docs/install
Инициализируйте и выполните аутентификацию:
gcloud initgcloud auth loginВариант B: Cloud Console
Все шаги можно выполнить через веб-интерфейс по адресу https://console.cloud.google.com
Create a GCP project
CLI:
gcloud projects create my-openclaw-project --name="OpenClaw Gateway"gcloud config set project my-openclaw-projectВключите биллинг на https://console.cloud.google.com/billing (требуется для Compute Engine).
Включите Compute Engine API:
gcloud services enable compute.googleapis.comConsole:
- Перейдите в IAM & Admin > Create Project
- Назовите проект и создайте его
- Включите биллинг для проекта
- Перейдите в APIs & Services > Enable APIs > найдите "Compute Engine API" > Enable
Create the VM
Типы машин:
| Тип | Характеристики | Стоимость | Примечания |
|---|---|---|---|
| e2-medium | 2 vCPU, 4 ГБ RAM | ~$25/мес. | Самый надежный вариант для локальных сборок Docker |
| e2-small | 2 vCPU, 2 ГБ RAM | ~$12/мес. | Минимально рекомендуется для сборки Docker |
| e2-micro | 2 vCPU (общие), 1 ГБ RAM | Доступен в бесплатном уровне | Часто падает при сборке Docker из-за OOM (exit 137) |
CLI:
gcloud compute instances create openclaw-gateway \ --zone=us-central1-a \ --machine-type=e2-small \ --boot-disk-size=20GB \ --image-family=debian-12 \ --image-project=debian-cloudConsole:
- Перейдите в Compute Engine > VM instances > Create instance
- Имя:
openclaw-gateway - Регион:
us-central1, зона:us-central1-a - Тип машины:
e2-small - Загрузочный диск: Debian 12, 20 ГБ
- Создайте
SSH into the VM
CLI:
gcloud compute ssh openclaw-gateway --zone=us-central1-aConsole:
Нажмите кнопку "SSH" рядом с вашей VM на панели Compute Engine.
Примечание: распространение SSH-ключа может занять 1-2 минуты после создания VM. Если соединение отклоняется, подождите и повторите попытку.
Install Docker (on the VM)
sudo apt-get updatesudo apt-get install -y git curl ca-certificatescurl -fsSL https://get.docker.com | sudo shsudo usermod -aG docker $USERВыйдите и войдите снова, чтобы изменение группы вступило в силу:
exitЗатем снова подключитесь по SSH:
gcloud compute ssh openclaw-gateway --zone=us-central1-aПроверьте:
docker --versiondocker compose versionClone the OpenClaw repository
git clone https://github.com/openclaw/openclaw.gitcd openclawЭто руководство предполагает, что вы соберете пользовательский образ, чтобы гарантировать сохранность бинарных файлов.
Create persistent host directories
Контейнеры Docker эфемерны. Все долгоживущее состояние должно находиться на хосте.
mkdir -p ~/.openclawmkdir -p ~/.openclaw/workspaceConfigure environment variables
Создайте .env в корне репозитория.
OPENCLAW_IMAGE=openclaw:latestOPENCLAW_GATEWAY_TOKEN=OPENCLAW_GATEWAY_BIND=lanOPENCLAW_GATEWAY_PORT=18789 OPENCLAW_CONFIG_DIR=/home/$USER/.openclawOPENCLAW_WORKSPACE_DIR=/home/$USER/.openclaw/workspace GOG_KEYRING_PASSWORD=XDG_CONFIG_HOME=/home/node/.openclawЗадайте OPENCLAW_GATEWAY_TOKEN, если хотите управлять стабильным токеном
Gateway через .env; иначе настройте gateway.auth.token перед тем,
как полагаться на клиентов между перезапусками. Если ни один источник не
существует, OpenClaw использует токен только для времени выполнения этого
запуска. Сгенерируйте пароль keyring и вставьте его в GOG_KEYRING_PASSWORD:
openssl rand -hex 32Не коммитьте этот файл.
Этот файл .env предназначен для переменных окружения контейнера/среды выполнения, таких как OPENCLAW_GATEWAY_TOKEN.
Сохраненная аутентификация OAuth/API-key для провайдеров находится в смонтированном
~/.openclaw/agents/<agentId>/agent/auth-profiles.json.
Docker Compose configuration
Создайте или обновите docker-compose.yml.
services: openclaw-gateway: image: ${OPENCLAW_IMAGE} build: . restart: unless-stopped env_file: - .env environment: - HOME=/home/node - NODE_ENV=production - TERM=xterm-256color - OPENCLAW_GATEWAY_BIND=${OPENCLAW_GATEWAY_BIND} - OPENCLAW_GATEWAY_PORT=${OPENCLAW_GATEWAY_PORT} - OPENCLAW_GATEWAY_TOKEN=${OPENCLAW_GATEWAY_TOKEN} - GOG_KEYRING_PASSWORD=${GOG_KEYRING_PASSWORD} - XDG_CONFIG_HOME=${XDG_CONFIG_HOME} - PATH=/home/linuxbrew/.linuxbrew/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin volumes: - ${OPENCLAW_CONFIG_DIR}:/home/node/.openclaw - ${OPENCLAW_WORKSPACE_DIR}:/home/node/.openclaw/workspace ports: # Recommended: keep the Gateway loopback-only on the VM; access via SSH tunnel. # To expose it publicly, remove the `127.0.0.1:` prefix and firewall accordingly. - "127.0.0.1:${OPENCLAW_GATEWAY_PORT}:18789" command: [ "node", "dist/index.js", "gateway", "--bind", "${OPENCLAW_GATEWAY_BIND}", "--port", "${OPENCLAW_GATEWAY_PORT}", "--allow-unconfigured", ]--allow-unconfigured предназначен только для удобства начальной настройки и не заменяет корректную конфигурацию Gateway. Все равно настройте аутентификацию (gateway.auth.token или пароль) и используйте безопасные настройки bind для вашего развертывания.
Shared Docker VM runtime steps
Используйте общее руководство по среде выполнения для стандартного процесса на хосте Docker:
GCP-specific launch notes
В GCP, если сборка падает с Killed или exit code 137 во время pnpm install --frozen-lockfile, VM не хватает памяти. Используйте минимум e2-small или e2-medium для более надежных первых сборок.
При bind к LAN (OPENCLAW_GATEWAY_BIND=lan) настройте доверенный источник браузера перед продолжением:
docker compose run --rm openclaw-cli config set gateway.controlUi.allowedOrigins '["http://127.0.0.1:18789"]' --strict-jsonЕсли вы изменили порт Gateway, замените 18789 на настроенный порт.
Access from your laptop
Создайте SSH-туннель для проброса порта Gateway:
gcloud compute ssh openclaw-gateway --zone=us-central1-a -- -L 18789:127.0.0.1:18789Откройте в браузере:
http://127.0.0.1:18789/
Повторно выведите чистую ссылку на панель:
docker compose run --rm openclaw-cli dashboard --no-openЕсли UI запрашивает аутентификацию shared-secret, вставьте настроенный токен или пароль в настройки Control UI. Этот процесс Docker по умолчанию записывает токен; если вы переключите конфигурацию контейнера на аутентификацию паролем, используйте этот пароль вместо токена.
Если Control UI показывает unauthorized или disconnected (1008): pairing required, одобрите устройство браузера:
docker compose run --rm openclaw-cli devices listdocker compose run --rm openclaw-cli devices approve <requestId>Снова нужна справка по общей постоянной сохранности и обновлениям? См. Docker VM Runtime и обновления Docker VM Runtime.
Устранение неполадок
SSH-соединение отклонено
Распространение SSH-ключа может занять 1-2 минуты после создания VM. Подождите и повторите попытку.
Проблемы с OS Login
Проверьте свой профиль OS Login:
gcloud compute os-login describe-profileУбедитесь, что у вашего аккаунта есть необходимые разрешения IAM (Compute OS Login или Compute OS Admin Login).
Недостаточно памяти (OOM)
Если сборка Docker падает с Killed и exit code 137, VM была завершена из-за OOM. Перейдите на e2-small (минимум) или e2-medium (рекомендуется для надежных локальных сборок):
# Stop the VM firstgcloud compute instances stop openclaw-gateway --zone=us-central1-a # Change machine typegcloud compute instances set-machine-type openclaw-gateway \ --zone=us-central1-a \ --machine-type=e2-small # Start the VMgcloud compute instances start openclaw-gateway --zone=us-central1-aСервисные аккаунты (лучшая практика безопасности)
Для личного использования ваш стандартный пользовательский аккаунт подходит.
Для автоматизации или CI/CD-пайплайнов создайте отдельный сервисный аккаунт с минимальными разрешениями:
-
Создайте сервисный аккаунт:
bash gcloud iam service-accounts create openclaw-deploy \ --display-name="OpenClaw Deployment" -
Выдайте роль Compute Instance Admin (или более узкую пользовательскую роль):
bash gcloud projects add-iam-policy-binding my-openclaw-project \ --member="serviceAccount:openclaw-deploy@my-openclaw-project.iam.gserviceaccount.com" \ --role="roles/compute.instanceAdmin.v1"
Не используйте роль Owner для автоматизации. Применяйте принцип наименьших привилегий.
Подробности о ролях IAM см. на https://cloud.google.com/iam/docs/understanding-roles.
Следующие шаги
- Настройте каналы обмена сообщениями: Каналы
- Сопрягите локальные устройства как узлы: Узлы
- Настройте Gateway: Конфигурация Gateway