Перейти к содержанию

Обзор развертывания OpenClaw на сервере

Предварительные требования

Для успешного развертывания приложения необходимо обеспечить соответствие следующим параметрам:

  • Операционная система: Debian 11+ или Ubuntu 20.04+.

  • Права доступа: Требуются права sudo для выполнения системных операций и установки пакетов.

  • Порты:

  • 22/tcp (SSH) — доступ к серверу.

  • 80/tcp (HTTP) — для проверки SSL и Let's Encrypt.

  • 443/tcp (HTTPS) — основной трафик приложения.

  • 18789/tcp (Gateway Port) — внутренний порт шлюза OpenClaw.

  • 41641/udp (Tailscale) — если включена поддержка VPN Tailscale.

FDQN итоговой панели на домене hostkey.in

Если для доступа к веб-интерфейсу используется поддомен, применяется следующий шаблон:

Параметр Значение
Префикс openclaw
Домен hostkey.in
Полный шаблон openclaw{Server_ID_from_Invapi}.hostkey.in

Структура файлов и каталогов

После установки основные данные и конфигурации располагаются по следующим путям:

  • /home/openclaw/.openclaw — основная директория приложения (конфигурация, логи, сессии).

  • /data/nginx — пользовательские конфигурации Nginx.

  • /root/nginx — файлы Docker Compose для прокси-сервера.

  • /etc/docker/daemon.json — системные настройки Docker.

Процесс установки приложения

Развертывание OpenClaw выполняется в несколько этапов:

  1. Подготовка системы:

  2. Обновление кэша пакетов и установка базовых утилит (curl, git, sudo, ca-certificates).

  3. Очистка системы от старых репозиториев Docker (если они присутствуют).

  4. Установка среды выполнения:

  5. Установка Docker CE и компонентов Docker Compose.

  6. Установка Node.js (версия 24.x) и пакетного менеджера pnpm.

  7. Настройка пользователя:

  8. Создание системного пользователя openclaw с домашним каталогом /home/openclaw.

  9. Настройка прав доступа через sudoers для выполнения ограниченных команд (управление сервисом, диагностика Tailscale).

  10. Установка OpenClaw:

  11. При использовании режима release: глобальная установка через pnpm install -g openclaw@latest.

  12. При использовании режима development: клонирование репозитория из GitHub, сборка проекта и создание символических ссылок на бинарные файлы.

  13. Первоначальная настройка:

  14. После установки необходимо переключиться на пользователя openclaw и выполнить команду:

    openclaw onboard --install-daemon
    
    Это запустит мастер настройки, создаст файл конфигурации ~/.openclaw/config.json и настроит системную службу (daemon).

Права доступа и безопасность

Безопасность системы обеспечивается следующими механизмами:

  • Брандмауэр UFW: Настроен на блокировку входящего трафика по умолчанию, разрешены только необходимые порты (SSH, HTTP, HTTPS).

  • Изоляция Docker: Настроены правила iptables через конфигурацию Docker и UFW, чтобы ограничить пересылку трафика между контейнерами.

  • Fail2Ban: Установлен для защиты SSH от подбора паролей (brute-force).

  • Автоматические обновления: Включен пакет unattended-upgrades для автоматической установки обновлений безопасности.

  • Ограничение прав пользователя: Пользователь openclaw имеет право выполнять только специфические команды через sudo без ввода пароля, что минимизирует риски при компрометации приложения.

Базы данных

Приложение использует локальное хранилище для сессий и учетных данных в директории /home/openclaw/.openclaw. Данные хранятся в форматах JSON или SQLite (в зависимости от настроек провайдера).

Контейнеры Docker и их запуск

Для обеспечения работы веб-интерфейса через HTTPS используется контейнер Nginx с автоматическим получением SSL-сертификатов.

Имя образа Порты Тома (Volumes) Переменные окружения Политика перезапуска
jonasal/nginx-certbot:6.2.0-nginx1.31.0 80, 443 (host mode) - nginx_secrets:/etc/letsencrypt
- /data/nginx/user_conf.d:/etc/nginx/user_conf.d
- /data/nginx/letsencrypt:/var/www/letsencrypt
CERTBOT_EMAIL=hkadm@hostkey.com unless-stopped

Кастомные скрипты и дополнительные настройки

В процессе развертывания выполняются следующие действия:

  • Настройка окружения: Создается файл /home/openclaw/.bashrc с предустановленными путями для pnpm и переменными окружения (например, XDG_RUNTIME_DIR).

  • Скрипт приветствия: При первом входе пользователя openclaw отображается информационное сообщение со списком полезных команд.

  • Настройка системной службы: Создается файл /etc/systemd/system/openclaw-gateway.service для работы приложения в фоновом режиме как демона.

Инструкция по обновлению приложения

Обновление основного приложения зависит от режима установки:

  • Если установлено через pnpm (release mode):

    sudo -u openclaw pnpm install -g openclaw@latest
    

  • Если установлена из исходного кода (development mode): Перейдите в директорию с кодом и выполните сборку:

    cd /home/openclaw/code/openclaw
    pnpm pull && pnpm build
    

Расположение конфигурационных файлов и данных

  • Конфигурация приложения: /home/openclaw/.openclaw/config.yml (создается в процессе onboard).

  • Логи приложения: /home/openclaw/.openclaw/logs/.

  • Конфигурация Nginx: /data/nginx/user_conf.d/{domain}.conf.

Доступные порты для подключения

  • 80 (HTTP) — перенаправляет на HTTPS.

  • 443 (HTTPS) — основной порт веб-интерфейса управления.

  • 18789 (Gateway) — локальный порт шлюза.

Запуск, остановка приложения

Управление приложением осуществляется через системную службу systemd:

  • Запуск: sudo systemctl start openclaw

  • Остановка: sudo systemctl stop openclaw

  • Перезагрузка: sudo systemctl restart openclaw

  • Просмотр статуса: openclaw status или journalctl -u openclaw -f

Прокси серверы

Для обеспечения безопасного доступа к прилобжению используется Nginx, работающий в связке с Certbot. Nginx выступает в обратного прокси (reverse proxy), терминируя SSL-соединения и перенаправляя трафик на локальный порт шлюза OpenClaw (127.0.0.1:18789).

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×