Jorge Turbica / blog · Blog ← Todos los artículos EN · Read in English
Tecnologías

Repo del día: Kiri, un runtime de contenedores en Rust que arranca en 2,5 ms

Kiri sustituye a Docker Desktop con una VM mínima y la misma API de Docker. Promete contenedores en 2,5 ms, pero tiene nueve días y es beta.

Un contenedor que arranca y termina en 2,55 ms a través de la API de Docker, frente a 213 ms en Docker Desktop. Con esa cifra en el README, Kiri ha sumado 1.470 estrellas en GitHub desde que se creó el repositorio, el 2 de noviembre de 2026, y el 10 de noviembre publicó su versión 0.2.0.

Qué es Kiri

Kiri es un runtime de contenedores para macOS, Windows y Linux escrito en Rust que quiere sustituir a Docker Desktop y a OrbStack sin cambiar tus herramientas. Habla la API de Docker Engine, así que el CLI de docker, Compose, buildx y docker login funcionan contra él igual que contra Docker.

Lo interesante está en cómo lo consigue. En macOS y Windows ejecuta los contenedores dentro de una única máquina virtual Linux pequeña; en Linux, directamente sobre el kernel del host. La VM usa un kernel propio de unos 10 MB y su PID 1 es un agente en Rust de unos 900 KB que arranca cada contenedor con una sola llamada clone3 dentro de sus namespaces y su cgroup. No hay runc, ni shim, ni dockerd. El daemon de Kiri, en el host, se comunica con ese agente por vsock.

Esa arquitectura explica las otras cifras del proyecto: la VM se duerme tras 60 segundos sin actividad, el daemon ocupa unos 15 MB y la VM se despierta en unos 0,15 s. Además trae dominios locales (http://<nombre>.kiri.local, con HTTPS firmado por una autoridad de certificación propia de Kiri), un clúster de Kubernetes de un nodo con k3s, máquinas Linux con tu usuario y tu /Users, imágenes amd64 en Apple silicon a través de Rosetta y, desde la 0.2.0, paso de dispositivos USB a los contenedores (en beta).

La licencia es Apache-2.0. El kernel de la VM es Linux (GPL-2.0) y el nombre y el logo de Kiri quedan fuera de la licencia: los forks son bienvenidos con otro nombre.

Cómo se usa

Se instala con el paquete de cada sistema desde runkiri.com/releases: .dmg para macOS 14 o posterior, .msi para Windows 10 y 11 (funciona a través de WSL 2) y .deb o .rpm para Linux. En Linux hay también un paquete kiri-lite de 2,7 MB que trae solo el motor, sin la ventana. Al abrirlo por primera vez crea un contexto de Docker llamado kiri:

bash
docker --context kiri run --rm alpine echo hello
docker --context kiri compose up -d

kiri k8s start      # single-node k3s as the "kiri" kubectl context
kiri import         # bring images, volumes and containers from Docker Desktop or OrbStack

Los comandos de Docker también funcionan como kiri run, kiri ps o kiri compose up, siempre contra Kiri. Para comprobar las cifras en tu máquina, kiri bench repite la medición.

Lo que me convence y lo que no

Me convence que no reinventa la interfaz: el contexto de Docker, Compose y buildx siguen siendo los de siempre, y kiri import reduce el coste de probarlo y volver atrás. También que publica el método de sus pruebas (mediana de 30 ejecuciones de alpine lanzando true y borrándose, con el mismo CLI de docker para los tres) y que se puede repetir. La actividad es intensa: 95 forks, 58 issues abiertas y commits del mismo 10 de noviembre.

Lo que no me convence aún es la madurez. Tiene nueve días de vida, la web lo marca como beta y la 0.2.0 corrige cosas tan básicas como que la VM de macOS se parara con mucho tráfico de red. Las cifras de rendimiento son del propio proyecto y miden arrancar un contenedor vacío, no el tiempo de una build ni el de I/O de ficheros, que es donde más se sufre en Docker Desktop.

Antes de adoptarlo hay dos detalles concretos que revisar. El primero, la autoridad de certificación local para los dominios HTTPS: decide si quieres que tu máquina confíe en ella. El segundo, una limitación que el propio proyecto documenta: docker build --add-host name:host-gateway con BuildKit falla, porque el builder de Kiri es de tipo docker-container. Hasta que llegue el builder integrado que anuncia su hoja de ruta, hay que usar la IP del gateway o DOCKER_BUILDKIT=0.

Kiri frente a Docker Desktop

KiriDocker Desktop
EnfoqueVM mínima con agente propio, sin dockerd ni runcEl motor oficial de Docker
Arranque de un contenedor (API, mediana)2,55 ms213 ms
LicenciaApache-2.0Gratis para empresas de menos de 250 empleados y 10 M$ de facturación; de pago en organizaciones mayores
Madurez0.2.0, beta, nueve díasHerramienta estándar del sector

Cifras de arranque: mediciones publicadas por Kiri, en su README. OrbStack marca 380 ms en la misma prueba.

Cuándo usar cada uno. Docker Desktop sigue siendo la opción para equipos que necesitan soporte, una herramienta homologada por la empresa o todo el ecosistema de extensiones. Kiri tiene sentido para probarlo en un portátil personal o en un proyecto con muchos contenedores efímeros, como tests de integración que levantan y tiran bases de datos, y para quien busca una alternativa con licencia abierta en una organización que pagaría por Docker Desktop. Para producción no aplica: es una herramienta de escritorio.

Fuentes

Jorge Turbica

Software Engineer y SRE. Escribo sobre los retos reales que me encuentro en producción.

Ver portfolio ↗