Docker
Empaquetar una aplicación con todas sus dependencias para que se ejecute igual en cualquier sitio.
La tecnología subyacente —namespaces y cgroups de Linux— existía desde antes. Lo que aportó Docker en 2013 fue la ergonomía: un fichero de texto que describe la imagen, un registro público donde compartirla y un comando para ejecutarla. Eso bastó para acabar con el clásico «en mi máquina funciona».
Un contenedor no es una máquina virtual: comparte el núcleo del anfitrión en lugar de emular hardware, de ahí que arranque en milisegundos. El aislamiento, en consecuencia, es menor — algo que conviene tener presente al ejecutar código ajeno.