# De contenedores a unikernels: más rápido, más seguro, más ligero - T3chFest 2026

- Channel: [T3chFest](https://www.youtube.com/channel/UClaNUpRMzr73MrrKDX_WTcA)
- Published: 2026-03-31
- Source video: [Watch on YouTube](https://youtube.com/watch?v=dB9xgzXQtKk)
- Read on ReadTube: https://www.read.tube/p/videos/dB9xgzXQtKk
- Language: Spanish

## Article

¡Muchísimas gracias a todos por venir y por haber elegido mi charla, titulada "De contenedores a Unikernels"! Me llamo Ramsés, trabajo en Next Digital y, antes que nada, quiero empezar con un pequeño aviso: el contenido de esta charla puede herir la sensibilidad de los fans de Docker, de Kubernetes y de los contenedores en general. Si hay alguien que sea especialmente fan, la puerta está abierta, aunque espero que no abandonéis la sala. Era broma. Vamos a analizar críticamente todo lo que tiene que ver con contenedores, Kubernetes y Docker.

#### Un viaje en el tiempo: 2016 vs. 2026

Hagamos memoria. Estamos en 2016. Trump acaba de ganar las elecciones. ¿Cómo empaquetábamos y desplegábamos aplicaciones en aquella época? Docker salió entre 2013 y 2014, y Kubernetes un poco después. Incluso si en nuestra empresa no lográbamos convencer a los jefes de usar Kubernetes en 2016, ya entendíamos que Docker y Docker Compose eran la forma de hacerlo.

Llegamos a 2026, a la actualidad. ¿Cómo desplegamos un microservicio? ¿Dónde lo metemos? Pues con contenedores. Es el "día de la marmota". A pesar de todos los cambios con la Inteligencia Artificial, en esta área seguimos haciendo lo mismo que hace 10 años. ¿Por qué esta relación a tan largo plazo? Quizás porque pensamos que son portables, seguros, rápidos, ligeros, eficientes y con un *tooling* agradable.

¿Y si nuestro jefe nos dijera mañana que no podemos usar contenedores? ¿Volveríamos a las máquinas virtuales de hace 20 años? Pues bien, sostengo que la mayoría de esas afirmaciones son mentira: los contenedores no son tan portables, ni tan seguros, ni tan rápidos, ni tan ligeros como creemos, y las máquinas virtuales no están tan mal.

#### Desmontando mitos

##### ¿Son los contenedores portables?
Depende. Son portables entre máquinas Linux. Si desarrollas en Windows o macOS y crees que tus contenedores funcionan nativamente, estás usando virtualización. De hecho, existe el "Docker multiplatform". Si fueran realmente portables, no necesitaríamos publicar imágenes para varias arquitecturas.

##### ¿Son seguros?
Los contenedores son esencialmente inseguros. Si fueran seguros, no necesitaríamos un manual de instrucciones tan estricto: usar imágenes oficiales minimalistas, no usar `root`, no montar el socket de Docker, parchear el kernel, etc. Los contenedores no son más que procesos con "guardarraíles". Si una protección falla, accedes al host. La propia empresa Docker reconoce esto, habiendo lanzado hace poco "Docker Sandboxes", que esencialmente mete los contenedores dentro de máquinas virtuales por seguridad.

##### ¿Arrancan rápido?
Un contenedor no suele bajar de los 200 milisegundos para arrancar, a lo que hay que sumar el tiempo del microservicio. Si usas Kubernetes, el *scheduler* y la complejidad de red añaden más retraso. En arquitecturas *serverless* (*scale-to-zero*), esto es crítico. Amazon ha admitido en varios *papers* que, internamente, no usan contenedores para Lambda o Fargate.

##### ¿Son ligeros?
La tecnología es eficiente, pero se usa mal. Una imagen oficial de Nginx ocupa más de 200 MB. Incluso Alpine, la opción minimalista, contiene decenas de ejecutables innecesarios. No es un *overhead* enorme, pero no es despreciable.

---

#### La solución: Unikernels

Mi "carta a los Reyes Magos" sería una tecnología que fuera:
*   Auténticamente portable.
*   Segura por diseño.
*   Con una superficie de ataque mínima.
*   Más rápida y eficiente que un contenedor.

Los **Unikernels** existen y permiten lograr esto. Un Unikernel es un sistema operativo minimalista diseñado exclusivamente para ejecutar una sola aplicación (típicamente un microservicio). Se fusionan con la aplicación, creando un único binario autocontenido. Si arrancas 10 Unikernels, tienes 10 sistemas operativos y 10 kernels independientes. Son monoproceso, sin usuarios, sin *shell* innecesaria e inmutables por diseño.

#### ¿Cómo se usan?
Aunque podrías instalar un Unikernel en hardware *bare-metal*, lo común es virtualizarlos. Aquí entran los hipervisores modernos de tipo 1, como **KVM** y el gestor **Firecracker** (desarrollado por Amazon), que permite arrancar máquinas virtuales de forma increíblemente rápida y eficiente.

Las dos tecnologías de Unikernel más relevantes son:
1.  **Nanos (o NanoVMS):** Enfocado en la compatibilidad con binarios de Linux. Su herramienta es `ops`.
2.  **Unicraft:** Más empresarial y completa, con un *tooling* inspirado en Docker. Su herramienta es `craft`.

##### Comparativa de rendimiento
En pruebas de rendimiento arrancando 100 veces un "Hola Mundo":
| Tecnología | Tiempo aproximado |
| :--- | :--- |
| Docker | ~23 segundos |
| Nanos (con QEMU) | ~18 segundos |
| Nanos (con Firecracker) | ~6.9 segundos |

Los Unikernels son competitivos o superiores en velocidad y mucho más ligeros (la imagen de Nginx en Unicraft puede llegar a ocupar 2.8 MB frente a los 215 MB en Docker).

#### ¿Cómo integrar esto en tu infraestructura actual?
No hace falta tirarlo todo. Puedes usar Unikernels dentro de Docker o Kubernetes mediante un *Runtime Manager* llamado `runu`. Esto permite exportar una imagen de Unikernel como una imagen OCI e importarla para que Docker la ejecute usando un hipervisor, manteniendo la apariencia de un contenedor convencional.

#### Conclusiones
Los Unikernels son más rápidos, seguros y eficientes. Son ideales para *serverless*, IoT, *edge computing* y entornos que buscan "green computing". No es una tecnología madura al 100%, y tiene limitaciones como la imposibilidad de ejecutar aplicaciones multiproceso complejas, pero es el futuro hacia el que deberíamos mirar. En 2036, espero que la respuesta a cómo desplegamos aplicaciones no sea "contenedores", sino "Unikernels".

¡Muchas gracias!
