Las aplicaciones monolíticas respondían a las necesidades de su tiempo. La llegada de las capacidades de la nube motiva la aparición de Docker y resuelve necesidades empresariales específicas que las aplicaciones monolíticas no cubrían adecuadamente.
Como mencionamos en el primer artículo de la serie, Docker o contenedor es un paquete de software ligero, autocontenido y ejecutable con todo lo que necesita una aplicación: código, herramientas del sistema, bibliotecas y configuraciones.
Según esta premisa podríamos pensar que Docker puede funcionar en cualquier entorno y que siempre se comportará de la misma manera.
La respuesta corta es... SÍ, ADELANTE.
La respuesta larga es un poco más compleja, no es Docker, sino todo lo que rodea el caso de uso, los entornos y las aplicaciones que influyen en cómo tratar estas pequeñas piezas autocontenidas.
La tecnología debe responder siempre a una necesidad empresarial y a las tecnologías que la soportan. Las aplicaciones monolíticas respondían a las necesidades de su tiempo. Cumplían la función para la que fueron diseñadas, se ejecutaban en potentes centros de datos, a menudo alojados en las oficinas físicas de las empresas, y se adaptaban a los lenguajes y limitaciones de las tecnologías de la época.
Las ventajas serían:
Las desventajas serían:
Docker está intrínsecamente ligado a la nube.
La llegada de las capacidades de la nube motiva la aparición de Docker y resuelve necesidades empresariales específicas que las aplicaciones monolíticas no satisfacían adecuadamente.
7. La productividad del equipo de desarrollo aumenta y el periodo de adaptación en entornos de alta rotación se reduce drásticamente.
A estas alturas deberías estar convencido de que Dockerizar tiene muchas ventajas (algunas desventajas también pero no es de lo que trata este artículo) y si estás comenzando un nuevo proyecto o si ves un camino claro de migración es posible que quieras ejecutar tu aplicación en Docker.
En el siguiente artículo hablaremos de "Cómo desplegar una aplicación distribuida con Docker en la nube y no morir en el intento..." te damos una pista, Kubernetes es la herramienta para llevar todas las ventajas de Docker al siguiente nivel sin morir en el intento.
Barbara OS soporta la ejecución de aplicaciones empaquetadas en contenedores Docker. Si te interesa este tema y quieres saber más haz clic aquí.