Ejecuta OpenClaw de forma segura en Docker Sandboxes con privacidad total

Descubre cómo ejecutar agentes de IA localmente en entornos aislados usando Docker Sandboxes y Docker Model Runner, sin costos en la nube y con máxima seguridad.

Ejecuta OpenClaw de forma segura en Docker Sandboxes con privacidad total

Ejecuta OpenClaw de forma segura en Docker Sandboxes

La era de los agentes de IA está transformando la forma en que desarrollamos software. Sin embargo, con esta innovación llega una preocupación legítima: ¿cómo ejecutamos estos agentes de manera segura sin exponer nuestras claves API o permitir que accedan a recursos no autorizados? Docker Sandboxes emerge como la solución que muchos desarrolladores estaban esperando, ofreciendo un enfoque revolucionario para ejecutar cargas de trabajo de IA de forma aislada, segura y sin complicaciones.

¿Qué son Docker Sandboxes?

Docker Sandboxes es una primitiva innovadora en el ecosistema de Docker que permite ejecutar agentes de IA u otras cargas de trabajo en máquinas virtuales aisladas y ligeras. A diferencia de ejecutar contenedores directamente en tu máquina host, los sandboxes proporcionan una capa adicional de seguridad que mantiene el código potencialmente no confiable completamente aislado del sistema anfitrión.

Las características clave incluyen:

  • Aislamiento fuerte: Las cargas de trabajo se ejecutan en micro máquinas virtuales completamente aisladas del host
  • Seguridad de red configurable: Un proxy de red integrado controla exactamente a qué hosts y servicios puede conectarse el agente
  • Gestión automática de credenciales: Las claves API (como ANTHROPIC_API_KEY u OPENAI_API_KEY) se inyectan automáticamente a través del proxy, sin exponerlas nunca dentro del sandbox
  • Experiencia de desarrollador mejorada: A pesar de la seguridad robusta, la experiencia de usuario sigue siendo fluida y accesible

Introducción a OpenClaw: Agente de IA para Codificación

OpenClaw es un agente de IA de código abierto específicamente diseñado para tareas de codificación. Su propósito es ayudar a desarrolladores mediante la automatización de procesos de escritura, refactorización y depuración de código. La verdadera ventaja de combinar OpenClaw con Docker Sandboxes es la capacidad de ejecutarlo localmente sin necesidad de servicios en la nube, lo que elimina costos recurrentes y preocupaciones sobre la privacidad de datos.

Inicio Rápido: Configuración en 2 Comandos

Antes de comenzar, asegúrate de tener Docker Desktop instalado y que Docker Model Runner esté habilitado en la configuración (Configuración → Docker Model Runner → Activar).

Paso 1: Descarga un modelo local

Primero, necesitas descargar un modelo de IA que OpenClaw utilizará. Docker Model Runner te permite usar modelos de código abierto que se ejecutan completamente en tu máquina:

docker model pull ai/gpt-oss:20B-UD-Q4_K_XL

Este comando descarga un modelo GPT de 20 mil millones de parámetros optimizado para tu hardware local. El sufijo "Q4_K_XL" indica que está cuantizado para eficiencia.

Paso 2: Crea y ejecuta el sandbox

docker sandbox create --name openclaw -t olegselajev241/openclaw-dmr:latest shell
docker sandbox network proxy openclaw --allow-host localhost
docker sandbox run openclaw

Una vez dentro del sandbox, inicia OpenClaw con:

~/start-openclaw.sh

Y listo. Ahora tienes OpenClaw corriendo con una interfaz de terminal interactiva, conectado a un modelo local ejecutándose en Docker Model Runner en tu máquina. El agente está completamente aislado: solo puede leer y escribir archivos en el espacio de trabajo asignado, y el proxy de red controla todas las conexiones.

Flexibilidad: Modelos Locales y en la Nube

La belleza de esta configuración es su flexibilidad. Mientras que el flujo rápido usa modelos locales (perfecto para privacidad total y desarrollo sin costos), el proxy del sandbox también puede inyectar automáticamente tus claves API.

Usando modelos en la nube:

Si tienes variables de entorno como ANTHROPIC_API_KEY u OPENAI_API_KEY configuradas en tu host, OpenClaw puede acceder a esos modelos simplemente especificándolos en la configuración de OpenClaw. El proxy se encarga de inyectar las credenciales de forma segura, garantizando que tus claves nunca se expongan dentro del sandbox. Esto significa que puedes experimentar con modelos gratuitos locales durante desarrollo, y cambiar a modelos en la nube para trabajos más exigentes, todo en el mismo entorno.

Descubrimiento y Selección de Modelos

El script de inicio detecta automáticamente qué modelos tienes disponibles en Docker Model Runner. Para listar todos los modelos disponibles:

~/start-openclaw.sh list

Para usar un modelo específico:

~/start-openclaw.sh ai/qwen2.5:7B-Q4_K_M

Cualquier modelo que hayas descargado con docker model pull está disponible instantáneamente. Esta flexibilidad permite experimentar con diferentes modelos sin necesidad de reconstruir tu entorno.

Cómo Funciona: La Arquitectura Técnica

Para entender completamente por qué esta configuración es tan elegante, es importante conocer los detalles técnicos.

La imagen precompilada (olegselajev241/openclaw-dmr:latest) se basa en la plantilla sandbox shell con tres adiciones: Node.js 22, OpenClaw, y un pequeño puente de red. Este puente es esencial porque Docker Model Runner se ejecuta en tu host en localhost:12434, pero "localhost" dentro del sandbox se refiere al sandbox mismo, no al host.

El desafío de la comunicación entre sandbox y host:

El sandbox tiene un proxy HTTP disponible en host.docker.internal:3128 que puede alcanzar servicios en el host. Sin embargo, OpenClaw está escrito en Node.js, y Node.js no respeta las variables de entorno HTTP_PROXY de forma fiable. La solución ingeniosa es un script puente de aproximadamente 20 líneas que:

  • OpenClaw se conecta al puente en 127.0.0.1:54321
  • El puente reenvía explícitamente las solicitudes a través del proxy
  • El proxy alcanza Docker Model Runner en el host en localhost:12434

Este flujo: OpenClaw → puente (localhost:54321) → proxy (host.docker.internal:3128) → Model Runner (host localhost:12434) permite que todo funcione transparentemente sin necesidad de exponer modelos o claves.

Personalización: Construir tu Propia Imagen

Si deseas personalizar la configuración o simplemente entender cómo funciona todo en detalle, Docker facilita la construcción de tu propia imagen desde cero. El proceso incluye:

1. Crear un sandbox base e instalar OpenClaw

Inicia un sandbox, instala Node.js 22 (requerido por OpenClaw) y luego instala OpenClaw desde npm. Ejecuta el script de configuración inicial para preparar todas las rutas y archivos necesarios.

2. Crear el puente de Model Runner

El script puente es la pieza mágica que permite que OpenClaw se comunique con Docker Model Runner. Es un pequeño servidor Node.js que reenvía solicitudes HTTP a través del proxy del sandbox.

3. Configurar OpenClaw para usar Docker Model Runner

Modifica el archivo de configuración JSON de OpenClaw para agregar Docker Model Runner como proveedor de modelos. Esto incluye especificar la URL base del puente (http://127.0.0.1:54321/engines/llama.cpp/v1) y registrar los modelos disponibles con sus especificaciones.

4. Guardar y compartir

Una vez que todo está funcionando, puedes guardar tu sandbox personalizado como una imagen reutilizable. Sube la imagen a un registro (Docker Hub, por ejemplo) para que otros desarrolladores puedan usar tu configuración exacta con un simple comando.

Casos de Uso Prácticos

Desarrollo privado: Los equipos que trabajan con código sensible pueden usar modelos locales sin temor a que los datos salgan del host.

Iteración rápida: Experimenta con diferentes modelos y configuraciones sin cambiar tu entorno de trabajo.

Reducción de costos: Elimina las facturas de API en la nube durante la fase de desarrollo, usando solo modelos locales gratuitos.

Entornos reproducibles: Comparte tu imagen de sandbox con compañeros de equipo para garantizar que todos trabajan con la misma configuración exacta.

Conclusión

Docker Sandboxes representa un cambio fundamental en cómo podemos ejecutar agentes de IA de forma segura y controlada. Al combinarlos con Docker Model Runner y OpenClaw, obtienes un entorno de desarrollo completamente local, privado y sin costos ocultos. Ya no necesitas elegir entre seguridad y funcionalidad: puedes tener ambas.

La configuración inicial toma apenas unos minutos, pero los beneficios son duraderos: aislamiento de seguridad robusto, gestión automática de credenciales, flexibilidad para cambiar entre modelos locales y en la nube, y la capacidad de reproducir exactamente el mismo entorno en cualquier máquina. Prueba esta configuración hoy y descubre por qué Docker Sandboxes es el futuro de la ejecución segura de agentes de IA.


📰 Fuente original: Docker Blog