Несколько шлюзов
В большинстве случаев следует использовать один шлюз, так как он может обрабатывать несколько мессенджер-соединений и агентов. Если вам нужна более строгая изоляция или резервирование (например, резервный бот), запускайте отдельные шлюзы с изолированными профилями/портами.
Контрольный список для изоляции (обязательно)
OPENCLAW_CONFIG_PATH— файл конфигурации для каждого экземпляраOPENCLAW_STATE_DIR— сессии, учетные данные, кэши для каждого экземпляраagents.defaults.workspace— корневая рабочая область для каждого экземпляраgateway.port(или--port) — уникальный для каждого экземпляра- Производные порты (браузера/canvas) не должны пересекаться
Если эти параметры используются совместно, возникнут гонки конфигураций и конфликты портов.
Рекомендуемый способ: профили (--profile)
Профили автоматически ограничивают область действия OPENCLAW_STATE_DIR + OPENCLAW_CONFIG_PATH и добавляют суффиксы к именам служб.
# основной
openclaw --profile main setup
openclaw --profile main gateway --port 18789
# резервный
openclaw --profile rescue setup
openclaw --profile rescue gateway --port 19001
Службы для каждого профиля:
openclaw --profile main gateway install
openclaw --profile rescue gateway install
Руководство по резервному боту
Запустите второй шлюз на том же хосте с его собственными:
- профилем/конфигурацией
- директорией состояния
- рабочей областью
- базовым портом (плюс производные порты)
Это изолирует резервного бота от основного, чтобы он мог выполнять отладку или применять изменения конфигурации, если основной бот не работает. Интервал портов: оставляйте как минимум 20 портов между базовыми портами, чтобы производные порты браузера/canvas/CDP никогда не пересекались.
Как установить (резервный бот)
# Основной бот (существующий или новый, без параметра --profile)
# Работает на порту 18789 + порты Chrome CDC/Canvas/...
openclaw onboard
openclaw gateway install
# Резервный бот (изолированный профиль + порты)
openclaw --profile rescue onboard
# Примечания:
# - имя рабочей области по умолчанию будет иметь суффикс -rescue
# - Порт должен быть как минимум 18789 + 20 портов,
# лучше выбрать совершенно другой базовый порт, например 19789,
# - остальные шаги онбординга такие же, как обычно
# Для установки службы (если это не произошло автоматически во время онбординга)
openclaw --profile rescue gateway install
Сопоставление портов (производные)
Базовый порт = gateway.port (или OPENCLAW_GATEWAY_PORT / --port).
- порт службы управления браузером = базовый порт + 2 (только loopback)
- хост canvas обслуживается на HTTP-сервере шлюза (тот же порт, что и
gateway.port) - Порты CDP профиля браузера автоматически выделяются из диапазона
browser.controlPort + 9 .. + 108
Если вы переопределяете любой из этих параметров в конфигурации или переменных окружения, они должны быть уникальными для каждого экземпляра.
Примечания по браузеру/CDP (частая ошибка)
- Не фиксируйте
browser.cdpUrlна одних и тех же значениях для нескольких экземпляров. - Каждому экземпляру нужен свой собственный порт управления браузером и диапазон CDP (производные от порта его шлюза).
- Если вам нужны явные порты CDP, установите
browser.profiles.<name>.cdpPortдля каждого экземпляра. - Удаленный Chrome: используйте
browser.profiles.<name>.cdpUrl(для каждого профиля, для каждого экземпляра).
Пример ручной настройки переменных окружения
OPENCLAW_CONFIG_PATH=~/.openclaw/main.json \
OPENCLAW_STATE_DIR=~/.openclaw-main \
openclaw gateway --port 18789
OPENCLAW_CONFIG_PATH=~/.openclaw/rescue.json \
OPENCLAW_STATE_DIR=~/.openclaw-rescue \
openclaw gateway --port 19001
Быстрые проверки
openclaw --profile main status
openclaw --profile rescue status
openclaw --profile rescue browser status
Фоновое выполнение и инструмент процессовУстранение неполадок