OpenClaw на GCP Compute Engine (Docker, посібник для production VPS)
Мета
Запустити постійний Gateway OpenClaw на VM GCP Compute Engine за допомогою Docker, зі стійким станом, вбудованими бінарними файлами та безпечною поведінкою перезапуску. Якщо ви хочете “OpenClaw 24/7 приблизно за $5-12/міс”, це надійне налаштування на Google Cloud. Вартість залежить від типу машини та регіону; виберіть найменшу VM, яка відповідає вашому навантаженню, і збільшуйте її, якщо почнете отримувати OOM.Що ми робимо (простими словами)?
- Створюємо проєкт GCP і вмикаємо білінг
- Створюємо VM Compute Engine
- Встановлюємо Docker (ізольоване середовище виконання застосунку)
- Запускаємо Gateway OpenClaw у Docker
- Зберігаємо
~/.openclaw+~/.openclaw/workspaceна хості (переживає перезапуски/перезбірки) - Отримуємо доступ до Control UI з вашого ноутбука через SSH-тунель
~/.openclaw включає openclaw.json, agents/<agentId>/agent/auth-profiles.json для кожного агента та .env.
До Gateway можна отримати доступ через:
- переадресацію SSH-порту з вашого ноутбука
- пряме відкриття порту, якщо ви самостійно керуєте firewall і токенами
Швидкий шлях (для досвідчених операторів)
- Створіть проєкт GCP + увімкніть API Compute Engine
- Створіть VM Compute Engine (e2-small, Debian 12, 20GB)
- Підключіться до VM через SSH
- Встановіть Docker
- Клонуйте репозиторій OpenClaw
- Створіть постійні каталоги на хості
- Налаштуйте
.envіdocker-compose.yml - Вбудуйте потрібні бінарні файли, зберіть і запустіть
Що вам знадобиться
- обліковий запис GCP (рівень free tier доступний для e2-micro)
- встановлений CLI
gcloud(або використовуйте Cloud Console) - доступ SSH з вашого ноутбука
- базове розуміння SSH + копіювання/вставлення
- ~20-30 хвилин
- Docker і Docker Compose
- облікові дані автентифікації моделі
- необов’язкові облікові дані провайдерів
- QR WhatsApp
- токен бота Telegram
- OAuth Gmail
Встановіть CLI gcloud (або використовуйте Console)
Варіант A: CLI Варіант B: Cloud ConsoleУсі кроки можна виконати через веб-інтерфейс за адресою https://console.cloud.google.com
gcloud (рекомендовано для автоматизації)Встановіть за посиланням https://cloud.google.com/sdk/docs/installІніціалізуйте та автентифікуйтеся:Створіть проєкт GCP
CLI:Увімкніть білінг на https://console.cloud.google.com/billing (обов’язково для Compute Engine).Увімкніть API Compute Engine:Console:
- Перейдіть до IAM & Admin > Create Project
- Вкажіть назву та створіть проєкт
- Увімкніть білінг для проєкту
- Перейдіть до APIs & Services > Enable APIs > знайдіть “Compute Engine API” > Enable
Створіть VM
Типи машин:
CLI:Console:
| Type | Specs | Cost | Notes |
|---|---|---|---|
| e2-medium | 2 vCPU, 4GB RAM | ~$25/mo | Найнадійніший варіант для локальних збірок Docker |
| e2-small | 2 vCPU, 2GB RAM | ~$12/mo | Мінімально рекомендований для збірки Docker |
| e2-micro | 2 vCPU (shared), 1GB RAM | Free tier eligible | Часто завершується помилкою OOM під час збірки Docker (exit 137) |
- Перейдіть до Compute Engine > VM instances > Create instance
- Назва:
openclaw-gateway - Регіон:
us-central1, зона:us-central1-a - Тип машини:
e2-small - Завантажувальний диск: Debian 12, 20GB
- Створіть інстанс
Підключіться до VM через SSH
CLI:Console:Натисніть кнопку “SSH” поруч із вашою VM на панелі Compute Engine.Примітка: поширення SSH-ключів може тривати 1-2 хвилини після створення VM. Якщо з’єднання відхиляється, зачекайте та повторіть спробу.
Встановіть Docker (на VM)
Клонуйте репозиторій OpenClaw
Створіть постійні каталоги на хості
Контейнери Docker є ефемерними.
Усі довготривалі дані мають зберігатися на хості.
Налаштуйте змінні середовища
Створіть Залиште Не комітьте цей файл.Цей файл
.env у корені репозиторію.OPENCLAW_GATEWAY_TOKEN порожнім, якщо ви не хочете явно
керувати ним через .env; під час першого запуску OpenClaw записує
випадковий токен Gateway у конфігурацію. Згенеруйте пароль keyring і
вставте його в GOG_KEYRING_PASSWORD:.env призначений для змінних середовища контейнера/середовища виконання, таких як OPENCLAW_GATEWAY_TOKEN.
Збережена автентифікація провайдерів через OAuth/API-ключі знаходиться у змонтованому
~/.openclaw/agents/<agentId>/agent/auth-profiles.json.Конфігурація Docker Compose
Створіть або оновіть
docker-compose.yml.--allow-unconfigured призначений лише для зручності початкового налаштування, він не замінює належну конфігурацію Gateway. Усе одно налаштуйте автентифікацію (gateway.auth.token або пароль) і використовуйте безпечні параметри bind для вашого розгортання.Спільні кроки середовища виконання Docker VM
Для стандартного процесу Docker-хоста використовуйте спільний посібник із середовища виконання:
Примітки щодо запуску на GCP
На GCP, якщо збірка завершується помилкою Якщо ви змінили порт gateway, замініть
Killed або exit code 137 під час pnpm install --frozen-lockfile, VM не вистачає пам’яті. Використовуйте щонайменше e2-small або e2-medium для більш надійних перших збірок.Під час прив’язки до LAN (OPENCLAW_GATEWAY_BIND=lan) перед продовженням налаштуйте довірене джерело браузера:18789 на налаштований порт.Доступ із вашого ноутбука
Створіть SSH-тунель для переадресації порту Gateway:Відкрийте у браузері:Якщо UI просить автентифікацію через shared secret, вставте налаштований токен або
пароль у налаштуваннях Control UI. У цьому процесі Docker за замовчуванням записується токен;
якщо ви переключите конфігурацію контейнера на автентифікацію паролем, використовуйте
натомість цей пароль.Якщо в Control UI показується Потрібне ще раз посилання на спільний довідник про збереження даних і оновлення?
Див. Docker VM Runtime і оновлення Docker VM Runtime.
http://127.0.0.1:18789/Повторно виведіть чисте посилання на панель:unauthorized або disconnected (1008): pairing required, схваліть пристрій браузера:Усунення несправностей
SSH connection refused Поширення SSH-ключів може тривати 1-2 хвилини після створення VM. Зачекайте та повторіть спробу. Проблеми з OS Login Перевірте свій профіль OS Login:Killed і exit code 137, процес був завершений через нестачу пам’яті. Перейдіть на e2-small (мінімум) або e2-medium (рекомендовано для надійних локальних збірок):
Сервісні облікові записи (найкраща практика безпеки)
Для особистого використання ваш стандартний обліковий запис користувача цілком підходить. Для автоматизації або конвеєрів CI/CD створіть окремий сервісний обліковий запис із мінімальними дозволами:-
Створіть сервісний обліковий запис:
-
Надайте роль Compute Instance Admin (або вужчу спеціальну роль):
Наступні кроки
- Налаштуйте канали обміну повідомленнями: Канали
- Під’єднайте локальні пристрої як Node: Node
- Налаштуйте Gateway: Конфігурація Gateway