Ejecuta OpenClaw en Docker
Ejecuta el gateway y la CLI como servicios de Docker Compose, compilados desde el código fuente o descargados como imagen precompilada ghcr.io/openclaw/openclaw.
Necesitas Git y Docker con Compose. Compilar la imagen localmente requiere al menos 6 GB de RAM, así que usa la imagen precompilada si el host tiene menos memoria.
Clona el repositorio y ejecuta la configuración
El script de configuración del repositorio prepara los servicios de Compose. Para omitir la compilación local, exporta OPENCLAW_IMAGE=ghcr.io/openclaw/openclaw:latest antes de ejecutarlo. También hay una imagen publicada en Docker Hub como openclaw/openclaw.
shell git clone https://github.com/openclaw/openclaw.git cd openclaw ./scripts/docker/setup.shAbre el panel
Esto ejecuta una vez el contenedor de la CLI para usar el comando del panel; --no-open evita que intente abrir un navegador dentro del contenedor. Los demás comandos de la CLI funcionan igual. Por ejemplo: docker compose run --rm openclaw-cli channels add --channel telegram --token "<token>".
shell docker compose run --rm openclaw-cli dashboard --no-openConserva los datos y dimensiona el host
Guarda el estado de OpenClaw (openclaw.json y el espacio de trabajo del agente) en un volumen con nombre o un montaje bind para que se conserve al volver a compilar y actualizar los contenedores. Si compilas la imagen, reserva al menos 6 GB de RAM; con la imagen precompilada y modelos en la nube, el gateway funciona con 1 GB. Dentro de un contenedor, gateway.bind auto se resuelve como 0.0.0.0, así que mantén activada la autenticación mediante token.
Actualiza los contenedores
Descarga las imágenes nuevas tanto para el gateway como para el servicio de la CLI y, después, vuelve a crear solo el gateway. La configuración y el espacio de trabajo se conservan en el volumen.
shell docker compose pull openclaw-gateway openclaw-cli docker compose up -d openclaw-gateway
Como el gateway escucha en 0.0.0.0 dentro del contenedor, una asignación de puertos como 18789:18789 lo publica en todas las interfaces del host. Usa 127.0.0.1:18789:18789 en su lugar.