OpenClawSkills
GitHub
Gateway / Operaciones • 5 min de lectura

Múltiples Gateways

Ejecutar múltiples Gateways OpenClaw en un host (aislamiento, puertos y perfiles)

La mayoría de configuraciones deberían usar un Gateway porque un solo Gateway puede manejar múltiples conexiones de mensajería y agentes. Si necesitas aislamiento más fuerte o redundancia (ej., un bot de rescate), ejecuta Gateways separados con perfiles/puertos aislados.

Tutorial.step

Lista de verificación de aislamiento (requerido)

- ''OPENCLAW_CONFIG_PATH'' — archivo de configuración por instancia

- ''OPENCLAW_STATE_DIR'' — sesiones, credenciales, caches por instancia

- ''agents.defaults.workspace'' — raíz de workspace por instancia

- ''gateway.port'' (o ''--port'') — único por instancia

- Los puertos derivados (browser/canvas) no deben superponerse

Si estos se comparten, tendrás carreras de configuración y conflictos de puertos.

Tutorial.step

Recomendado: perfiles (`--profile`)

Los perfiles auto-alcancen ''OPENCLAW_STATE_DIR'' + ''OPENCLAW_CONFIG_PATH'' y sufijan nombres de servicio.

Bash
openclaw --profile main setup
openclaw --profile main gateway --port 18789


openclaw --profile rescue setup
openclaw --profile rescue gateway --port 19001

Servicios por perfil:

Bash
openclaw --profile main gateway install
openclaw --profile rescue gateway install
Tutorial.step

Guía de bot de rescate

Ejecuta un segundo Gateway en el mismo host con su propio:

- perfil/config

- directorio de estado

- workspace

- puerto base (más puertos derivados)

Esto mantiene el bot de rescate aislado del bot principal para que pueda depurar o aplicar cambios de configuración si el bot primario está caído.

Espaciado de puertos: deja al menos 20 puertos entre puertos base para que los puertos derivados de browser/canvas/CDP nunca colisionen.

#

Tutorial.step

Cómo instalar (bot de rescate)

Bash
openclaw onboard
openclaw gateway install


openclaw --profile rescue onboard





openclaw --profile rescue gateway install
Tutorial.step

Mapeo de puertos (derivados)

Puerto base = ''gateway.port'' (o ''OPENCLAW_GATEWAY_PORT'' / ''--port'').

- puerto de servicio de control de navegador = base + 2 (solo loopback)

- ''canvasHost.port = base + 4''

- Los puertos CDP de perfil de navegador se auto-asignan desde ''browser.controlPort + 9 .. + 108''

Si sobrescribes alguno de estos en config o env, debes mantenerlos únicos por instancia.

Tutorial.step

Notas de Browser/CDP (error común)

- ''No'' fijes ''browser.cdpUrl'' a los mismos valores en múltiples instancias.

- Cada instancia necesita su propio puerto de control de navegador y rango CDP (derivados de su puerto de gateway).

- Si necesitas puertos CDP explícitos, establece ''browser.profiles.''.cdpPort'' por instancia.

- Chrome remoto: usa ''browser.profiles.''.cdpUrl'' (por perfil, por instancia).

Tutorial.step

Ejemplo de env manual

Bash
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
Tutorial.step

Verificaciones rápidas

Bash
openclaw --profile main status
openclaw --profile rescue status
openclaw --profile rescue browser status