Docker: Algo así como las matrioskas digitales

Se ha escrito mucho sobre “docker” y seguramente es la punta de un iceberg que continuará creciendo durante bastante tiempo. Y es que la literatura que versa sobre este fenómeno, no para de crecer, porque realmente aporta frescura a muchos procesos.

Si ya has leído sobre docker, probablemente lo asocies al mundo Linux y al cloud, aunque también es probable que hayas escuchado o leído noticias sobre que la propia Microsoft está trabajando para que, en su próximo sistema operativo de servidor, se incluya algún tipo de implementación de esta tecnología.

docker-las-matrioskas-digitales
Y si no, te lo explicamos. ¿Qué es docker?: se trata de una forma de virtualización, pero radicalmente diferente a los hypervisores, empleados por Hyper-V, Vmware ESXi. Tampoco es algo como los VPS de Parallels sino que, aunque se conocen como “contenedores”, trabaja de forma diferente.

Hay quien lo confunde con sistemas de automatización tipo Pupet, pero tampoco van los tiros exactamente por ahí…

Para acercarnos de forma sencilla a la forma en la que Docker trabaja, emplearemos un ejemplo.
Aquí, mi controlador docker, en un entorno muy simple, puede ser visto como una máquina Linux, con un software especial: Docker.

Con sencillos comandos, puedo generar un contenedor que despliegue un servidor web Nginx (con un solo comando puede estar desplegado), que compartirá ciertas partes del sistema con otros contenedores y el propio controlador Docker. Porque no se virtualiza el hardware, sino el sistema a partir de ciertas librerías, lo cual, para virtualizar aplicaciones, es mucho más ligero, rápido y sencillo que otros sistemas…

Imaginemos ahora que cierta aplicación funciona correctamente sobre Ubuntu 12.04, perfecto: con un solo comando pido a Docker que me cree un contenedor con esa versión de Ubuntu destinado únicamente para la aplicación en cuestión.

¿Pero, qué pasa si no tengo ese sistema operativo (Ubuntu 12.04)? Sin problema, Docker lo descarga de un repositorio, a mi máquina y lo despliega en segundos. Pudiendo yo gestionar ese entorno como si de una máquina aparte se tratase.

¿Y qué pasa si necesito otro Ubuntu, pero con una versión más avanzada? Más de lo mismo, pido a Docker un nuevo contenedor y “voalá”.
Con esta tecnología y en un escenario básico (imagina lo que puedo construir en uno más avanzado) puedo desplegar muchas aplicaciones, cada una en su propio entorno y sin entorpecer a las demás, sobre el sistema óptimo para cada una y pudiendo aislar o conectar unas con las otras. Todo ello, gobernado desde un mismo sistema, con comandos de forma sencilla.

Ahora vamos un paso más allá…
Piensa un entorno Cloud, un virtual Data Center sencillo, donde tengas servidores y puedas crear una máquina virtual (como cualquier servidor cloud), pero que esta a su vez sea un controlador Docker, desde el cual desplegar aplicaciones de diversos tipos, sistemas y necesidades desde un solo punto. Conviviendo y enlazadas, cada cual, a otros servidores para construir un todo mayor, y economizando recursos, tiempo y costes.

¿Te gusta? contacta con nosotros y permítenos hacerte una demostración sin compromiso.

Share This