Implementar en Render
Implemente OpenClaw en Render usando Infraestructura como Código. El Blueprint render.yaml incluido define toda su pila declarativamente, servicio, disco, variables de entorno, para que pueda implementar con un solo clic y versionar su infraestructura junto con su código.
Requisitos previos
Sección titulada «Requisitos previos»- Una cuenta de Render (plan gratuito disponible)
- Una clave de API de su proveedor de modelos preferido
Implementar con un Render Blueprint
Sección titulada «Implementar con un Render Blueprint»Desplegar en Render
Al hacer clic en este enlace:
- Creará un nuevo servicio de Render a partir del Blueprint
render.yamlen la raíz de este repositorio. - Le pedirá que configure
SETUP_PASSWORD - Construirá la imagen de Docker y la desplegará
Una vez desplegado, la URL de su servicio sigue el patrón https://<service-name>.onrender.com.
Entendiendo el Blueprint
Sección titulada «Entendiendo el Blueprint»Los Blueprint de Render son archivos YAML que definen su infraestructura. El render.yaml en este
repositorio configura todo lo necesario para ejecutar OpenClaw:
services: - type: web name: openclaw runtime: docker plan: starter healthCheckPath: /health envVars: - key: PORT value: "8080" - key: SETUP_PASSWORD sync: false # prompts during deploy - key: OPENCLAW_STATE_DIR value: /data/.openclaw - key: OPENCLAW_WORKSPACE_DIR value: /data/workspace - key: OPENCLAW_GATEWAY_TOKEN generateValue: true # auto-generates a secure token disk: name: openclaw-data mountPath: /data sizeGB: 1Características clave del Blueprint utilizadas:
| Característica | Propósito |
|---|---|
runtime: docker | Construye desde el Dockerfile del repositorio |
healthCheckPath | Render monitorea /health y reinicia las instancias no saludables |
sync: false | Solicita un valor durante el despliegue (secretos) |
generateValue: true | Genera automáticamente un valor criptográficamente seguro |
disk | Almacenamiento persistente que sobrevive a los re-despliegues |
Elegir un plan
Sección titulada «Elegir un plan»| Plan | Suspensión | Disco | Mejor para |
|---|---|---|---|
| Gratis | Después de 15 min de inactividad | No disponible | Pruebas, demostraciones |
| Inicial | Nunca | 1GB+ | Uso personal, equipos pequeños |
| Estándar+ | Nunca | 1GB+ | Producción, múltiples canales |
El Blueprint por defecto es starter. Para usar el nivel gratuito, cambie plan: free en el render.yaml de su bifurcación
(pero tenga en cuenta: la ausencia de disco persistente significa que la configuración se restablece en cada despliegue).
Después del despliegue
Sección titulada «Después del despliegue»Completar el asistente de configuración
Sección titulada «Completar el asistente de configuración»- Navegue a
https://<your-service>.onrender.com/setup - Ingrese su
SETUP_PASSWORD - Seleccione un proveedor de modelos y pegue su clave de API
- Opcionalmente configure canales de mensajería (Telegram, Discord, Slack)
- Haga clic en Ejecutar configuración
Acceder a la Interfaz de Control
Sección titulada «Acceder a la Interfaz de Control»El tablero web está disponible en https://<your-service>.onrender.com/openclaw.
Características del Panel de Render
Sección titulada «Características del Panel de Render»Registros
Sección titulada «Registros»Vea los registros en tiempo real en Dashboard → su servicio → Logs. Filtre por:
- Registros de compilación (creación de imagen Docker)
- Registros de despliegue (inicio del servicio)
- Registros de tiempo de ejecución (salida de la aplicación)
Acceso a Shell
Sección titulada «Acceso a Shell»Para la depuración, abre una sesión de shell mediante Dashboard → your service → Shell. El disco persistente está montado en /data.
Variables de entorno
Sección titulada «Variables de entorno»Modifica las variables en Dashboard → your service → Environment. Los cambios activan un nuevo despliegue automático.
Despliegue automático
Sección titulada «Despliegue automático»Si utilizas el repositorio original de OpenClaw, Render no desplegará automáticamente tu OpenClaw. Para actualizarlo, ejecuta una sincronización manual de Blueprint desde el panel.
Dominio personalizado
Sección titulada «Dominio personalizado»- Ve a Dashboard → your service → Settings → Custom Domains
- Añade tu dominio
- Configura el DNS como se indica (CNAME a
*.onrender.com) - Render aprovisiona un certificado TLS automáticamente
Escalado
Sección titulada «Escalado»Render admite el escalado horizontal y vertical:
- Vertical: Cambia el plan para obtener más CPU/RAM
- Horizontal: Aumenta el recuento de instancias (plan Estándar y superiores)
Para OpenClaw, el escalado vertical suele ser suficiente. El escalado horizontal requiere sesiones persistentes o gestión externa del estado.
Copias de seguridad y migración
Sección titulada «Copias de seguridad y migración»Exporta tu configuración y espacio de trabajo en cualquier momento:
https://<your-service>.onrender.com/setup/exportEsto descarga una copia de seguridad portátil que puedes restaurar en cualquier host de OpenClaw.
Solución de problemas
Sección titulada «Solución de problemas»El servicio no se inicia
Sección titulada «El servicio no se inicia»Comprueba los registros de despliegue en el panel de Render. Problemas comunes:
- Falta
SETUP_PASSWORD— el Blueprint lo solicita, pero verifica que esté configurado - Discrepancia de puerto — asegúrate de que
PORT=8080coincida con el puerto expuesto del Dockerfile
Arranques en frío lentos (nivel gratuito)
Sección titulada «Arranques en frío lentos (nivel gratuito)»Los servicios de nivel gratuito se apagan después de 15 minutos de inactividad. La primera solicitud después de apagarse tarda unos segundos mientras se inicia el contenedor. Actualiza al plan Starter para tenerlo siempre activo.
Pérdida de datos después de redesplegar
Sección titulada «Pérdida de datos después de redesplegar»Esto ocurre en el nivel gratuito (sin disco persistente). Actualiza a un plan de pago, o
exporta tu configuración regularmente mediante /setup/export.
Fallos de comprobación de estado
Sección titulada «Fallos de comprobación de estado»Render espera una respuesta 200 de /health dentro de 30 segundos. Si las compilaciones tienen éxito pero los despliegues fallan, es posible que el servicio tarde demasiado en iniciarse. Comprueba:
- Registros de compilación para ver errores
- Si el contenedor se ejecuta localmente con
docker build && docker run