Múltiples Gateways
La mayoría de las configuraciones deben usar un solo Gateway, ya que un único Gateway puede manejar múltiples conexiones de mensajería y agentes. Si necesitas un aislamiento más fuerte o redundancia (por ejemplo, un bot de rescate), ejecuta Gateways separados con perfiles/puertos aislados.
Lista de verificación para aislamiento (requerido)
OPENCLAW_CONFIG_PATH— archivo de configuración por instanciaOPENCLAW_STATE_DIR— sesiones, credenciales, cachés por instanciaagents.defaults.workspace— raíz del espacio de trabajo por instanciagateway.port(o--port) — único por instancia- Los puertos derivados (navegador/canvas) no deben superponerse
Si estos se comparten, encontrarás carreras de configuración y conflictos de puertos.
Recomendado: perfiles (--profile)
Los perfiles delimitan automáticamente OPENCLAW_STATE_DIR + OPENCLAW_CONFIG_PATH y añaden un sufijo a los nombres de los servicios.
# principal
openclaw --profile main setup
openclaw --profile main gateway --port 18789
# rescate
openclaw --profile rescue setup
openclaw --profile rescue gateway --port 19001
Servicios por perfil:
openclaw --profile main gateway install
openclaw --profile rescue gateway install
Guía para el bot de rescate
Ejecuta un segundo Gateway en el mismo host con su propio:
- perfil/configuración
- directorio de estado
- espacio de trabajo
- puerto base (más los 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 los puertos base para que los puertos derivados del navegador/canvas/CDP nunca colisionen.
Cómo instalar (bot de rescate)
# Bot principal (existente o nuevo, sin el parámetro --profile)
# Se ejecuta en el puerto 18789 + Puertos CDC/Canvas/... de Chrome
openclaw onboard
openclaw gateway install
# Bot de rescate (perfil aislado + puertos)
openclaw --profile rescue onboard
# Notas:
# - el nombre del espacio de trabajo se añadirá con -rescue por defecto
# - El puerto debe ser al menos 18789 + 20 Puertos,
# es mejor elegir un puerto base completamente diferente, como 19789,
# - el resto del proceso de incorporación es igual que el normal
# Para instalar el servicio (si no ocurrió automáticamente durante la incorporación)
openclaw --profile rescue gateway install
Mapeo de puertos (derivados)
Puerto base = gateway.port (o OPENCLAW_GATEWAY_PORT / --port).
- puerto del servicio de control del navegador = base + 2 (solo loopback)
- el host del canvas se sirve en el servidor HTTP del Gateway (mismo puerto que
gateway.port) - Los puertos CDP del perfil del navegador se asignan automáticamente desde
browser.controlPort + 9 .. + 108
Si anulas alguno de estos en la configuración o variables de entorno, debes mantenerlos únicos por instancia.
Notas sobre Navegador/CDP (error común)
- No fijes
browser.cdpUrla los mismos valores en múltiples instancias. - Cada instancia necesita su propio puerto de control del navegador y rango CDP (derivados de su puerto de gateway).
- Si necesitas puertos CDP explícitos, configura
browser.profiles.<name>.cdpPortpor instancia. - Chrome remoto: usa
browser.profiles.<name>.cdpUrl(por perfil, por instancia).
Ejemplo manual con variables de entorno
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
Comprobaciones rápidas
openclaw --profile main status
openclaw --profile rescue status
openclaw --profile rescue browser status
Ejecución en Segundo Plano y Herramienta de ProcesosSolución de Problemas