Перейти до основного вмісту

Documentation Index

Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt

Use this file to discover all available pages before exploring further.

Мета

Запустити постійний OpenClaw Gateway на Hetzner VPS за допомогою Docker, зі стійким станом, вбудованими бінарними файлами та безпечною поведінкою перезапуску. Якщо вам потрібен “OpenClaw 24/7 приблизно за $5”, це найпростіше надійне налаштування. Ціни Hetzner змінюються; виберіть найменший Debian/Ubuntu VPS і масштабуйтеся вгору, якщо зіткнетеся з OOM. Нагадування про модель безпеки:
  • Спільні для компанії агенти підходять, коли всі перебувають в одній межі довіри, а середовище виконання використовується лише для бізнесу.
  • Дотримуйтеся суворого розділення: окремий VPS/середовище виконання + окремі облікові записи; жодних особистих профілів Apple/Google/браузера/менеджера паролів на цьому хості.
  • Якщо користувачі можуть бути ворожими один до одного, розділяйте їх за gateway/хостом/користувачем ОС.
Див. Безпека і VPS-хостинг.

Що ми робимо (простими словами)?

  • Орендуємо невеликий Linux-сервер (Hetzner VPS)
  • Встановлюємо Docker (ізольоване середовище виконання застосунку)
  • Запускаємо OpenClaw Gateway у Docker
  • Зберігаємо ~/.openclaw + ~/.openclaw/workspace на хості (переживає перезапуски/перезбирання)
  • Отримуємо доступ до інтерфейсу керування з вашого ноутбука через SSH-тунель
Цей змонтований стан ~/.openclaw включає openclaw.json, окремі для кожного агента agents/<agentId>/agent/auth-profiles.json і .env. До Gateway можна отримати доступ через:
  • Перенаправлення SSH-порту з вашого ноутбука
  • Пряме відкриття порту, якщо ви самостійно керуєте firewall і токенами
Цей посібник передбачає Ubuntu або Debian на Hetzner.
Якщо ви використовуєте інший Linux VPS, зіставте пакети відповідно. Для загального Docker-процесу див. Docker.

Швидкий шлях (досвідчені оператори)

  1. Підготуйте Hetzner VPS
  2. Встановіть Docker
  3. Клонуйте репозиторій OpenClaw
  4. Створіть постійні каталоги на хості
  5. Налаштуйте .env і docker-compose.yml
  6. Вбудуйте потрібні бінарні файли в образ
  7. docker compose up -d
  8. Перевірте збереження стану та доступ до Gateway

Що вам потрібно

  • Hetzner VPS з root-доступом
  • SSH-доступ із вашого ноутбука
  • Базова впевненість у роботі з SSH + копіюванням/вставленням
  • ~20 хвилин
  • Docker і Docker Compose
  • Облікові дані автентифікації моделі
  • Необов’язкові облікові дані провайдерів
    • WhatsApp QR
    • Токен Telegram-бота
    • Gmail OAuth

1

Підготуйте VPS

Створіть Ubuntu або Debian VPS у Hetzner.Підключіться як root:
ssh root@YOUR_VPS_IP
Цей посібник передбачає, що VPS зберігає стан. Не розглядайте його як одноразову інфраструктуру.
2

Встановіть Docker (на VPS)

apt-get update
apt-get install -y git curl ca-certificates
curl -fsSL https://get.docker.com | sh
Перевірте:
docker --version
docker compose version
3

Клонуйте репозиторій OpenClaw

git clone https://github.com/openclaw/openclaw.git
cd openclaw
Цей посібник передбачає, що ви зберете власний образ, щоб гарантувати збереження бінарних файлів.
4

Створіть постійні каталоги на хості

Docker-контейнери ефемерні. Увесь довготривалий стан має зберігатися на хості.
mkdir -p /root/.openclaw/workspace

# Set ownership to the container user (uid 1000):
chown -R 1000:1000 /root/.openclaw
5

Налаштуйте змінні середовища

Створіть .env у корені репозиторію.
OPENCLAW_IMAGE=openclaw:latest
OPENCLAW_GATEWAY_TOKEN=
OPENCLAW_GATEWAY_BIND=lan
OPENCLAW_GATEWAY_PORT=18789

OPENCLAW_CONFIG_DIR=/root/.openclaw
OPENCLAW_WORKSPACE_DIR=/root/.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.
6

Конфігурація Docker Compose

Створіть або оновіть 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 VPS; 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 для вашого розгортання.
7

Спільні кроки середовища виконання Docker VM

Використовуйте спільний посібник середовища виконання для загального процесу на Docker-хості:
8

Доступ, специфічний для Hetzner

Після спільних кроків збирання та запуску завершіть таке налаштування, щоб відкрити тунель:Передумова: Переконайтеся, що конфігурація sshd вашого VPS дозволяє TCP forwarding. Якщо ви посилили свою SSH-конфігурацію, перевірте /etc/ssh/sshd_config і задайте:
AllowTcpForwarding local
local дозволяє локальні перенаправлення ssh -L з вашого ноутбука, водночас блокуючи віддалені перенаправлення із сервера. Якщо встановити no, тунель завершиться помилкою з: channel 3: open failed: administratively prohibited: open failedПісля підтвердження, що TCP forwarding увімкнено, перезапустіть SSH-сервіс (systemctl restart ssh) і запустіть тунель зі свого ноутбука:
ssh -N -L 18789:127.0.0.1:18789 root@YOUR_VPS_IP
Відкрийте:http://127.0.0.1:18789/Вставте налаштований спільний секрет. У цьому посібнику за замовчуванням використовується токен gateway; якщо ви перейшли на автентифікацію за паролем, використайте натомість цей пароль.
Спільна мапа збереження стану міститься в Docker VM Runtime.

Інфраструктура як код (Terraform)

Для команд, які віддають перевагу робочим процесам infrastructure-as-code, підтримуване спільнотою налаштування Terraform надає:
  • Модульну конфігурацію Terraform із керуванням віддаленим станом
  • Автоматизоване підготування через cloud-init
  • Скрипти розгортання (bootstrap, deploy, backup/restore)
  • Посилення безпеки (firewall, UFW, доступ лише через SSH)
  • Конфігурацію SSH-тунелю для доступу до gateway
Репозиторії: Цей підхід доповнює Docker-налаштування вище відтворюваними розгортаннями, інфраструктурою під контролем версій і автоматизованим аварійним відновленням.
Підтримується спільнотою. Для проблем або внесків див. посилання на репозиторії вище.

Наступні кроки

Пов’язане