Tiempo de ejecución de Docker en VM
Pasos compartidos del tiempo de ejecución para instalaciones de Docker basadas en VM, como GCP, Hetzner y proveedores VPS similares.Incorporar los binarios requeridos en la imagen
Instalar binarios dentro de un contenedor en ejecución es una trampa. Todo lo que se instale en tiempo de ejecución se perderá al reiniciar. Todos los binarios externos requeridos por Skills deben instalarse en el momento de crear la imagen. Los ejemplos siguientes muestran solo tres binarios comunes:gogpara acceso a Gmailgoplacespara Google Placeswaclipara WhatsApp
- Actualizar el Dockerfile
- Reconstruir la imagen
- Reiniciar los contenedores
Las URL de descarga anteriores son para x86_64 (amd64). Para VM basadas en ARM (por ejemplo, Hetzner ARM, GCP Tau T2A), sustituye las URL de descarga por las variantes ARM64 adecuadas de la página de versiones de cada herramienta.
Compilar e iniciar
Killed o exit code 137 durante pnpm install --frozen-lockfile, la VM no tiene suficiente memoria.
Usa una clase de máquina mayor antes de volver a intentarlo.
Verificar binarios:
Qué se conserva y dónde
OpenClaw se ejecuta en Docker, pero Docker no es la fuente de verdad. Todo el estado de larga duración debe sobrevivir a reinicios, reconstrucciones y reinicios del sistema.| Componente | Ubicación | Mecanismo de persistencia | Notas |
|---|---|---|---|
| Configuración del Gateway | /home/node/.openclaw/ | Montaje de volumen del host | Incluye openclaw.json, .env |
| Perfiles de autenticación del modelo | /home/node/.openclaw/agents/ | Montaje de volumen del host | agents/<agentId>/agent/auth-profiles.json (OAuth, claves API) |
| Configuraciones de Skills | /home/node/.openclaw/skills/ | Montaje de volumen del host | Estado a nivel de Skills |
| Espacio de trabajo del agente | /home/node/.openclaw/workspace/ | Montaje de volumen del host | Código y artefactos del agente |
| Sesión de WhatsApp | /home/node/.openclaw/ | Montaje de volumen del host | Conserva el inicio de sesión con QR |
| Llavero de Gmail | /home/node/.openclaw/ | Volumen del host + contraseña | Requiere GOG_KEYRING_PASSWORD |
| Binarios externos | /usr/local/bin/ | Imagen de Docker | Deben incorporarse al crear la imagen |
| Tiempo de ejecución de Node | Sistema de archivos del contenedor | Imagen de Docker | Se reconstruye en cada creación de imagen |
| Paquetes del SO | Sistema de archivos del contenedor | Imagen de Docker | No los instales en tiempo de ejecución |
| Contenedor de Docker | Efímero | Reiniciable | Se puede destruir sin problema |