kern: un contenedor rootless sin demonio en un binario estático de 1,52 MB

Fuentes: kern: a rootless, daemonless container runtime in one 1.52 MB static binary

kern es un tiempo de ejecución de contenedores y espacios aislados para Linux que se distribuye como un único binario estático de 1,52 MB y no necesita demonio. Está escrito en Rust, con libc como única dependencia, y levanta un contenedor real a partir de imágenes OCI en aproximadamente 3,5 milisegundos, sin consumir RAM en reposo y sin sockets abiertos. Funciona siempre en modo rootless, apoyándose en espacios de nombres del núcleo (usuario, PID, montaje, red, UTS e IPC), sistemas de archivos superpuestos o raíz de solo lectura, un perfil seccomp deAllowed por defecto y límites de cgroup v2.

La herramienta combina cuatro funciones en un solo ejecutable: contenedor, sandbox, cortador de recursos y gestor de stacks. Permite declarar perfiles de CPU, memoria, disco y dispositivos en un fichero kern.toml, levantarlos con un nombre y aplicarlos tanto dentro de un contenedor como a procesos del host sin sandbox. Acepta stacks en formato kern-compose.toml y también lee docker-compose.yml sin convertirlo, de modo que una pila completa corre como un pod con sus servicios accesibles por nombre.

El proyecto está pensado para ejecutar código no fiable y generado por IA (trabajos de agentes, pasos de CI o celdas de código) y ofrece un único indicador, --security-profile untrusted, que aplica el paquete endurecido completo. Incluye además un SDK para Python y Node y un servidor MCP para agentes, así como utilidades de inspección (ps, logs, exec, stats, top, doctor) con salida en JSON.

kern asume el mismo compromiso que Docker o Podman frente a bugs de escalada de privilegios en el núcleo, no es un hipervisor y, en su edición actual, no incluye soporte de GPU. Funciona en Linux, WSL2 y placas ARM como Raspberry Pi o Jetson, y se instala con un script verificado por SHA256 o compilando desde código fuente.