Skip to content
Volver a noticias
Feb 27

Desarrollo soportado en Dockers

Desarrollo soportado en Dockers

Dentro de las principales dificultades, en entornos de desarrollo, donde la complejidad de la arquitectura es una regla heredada de años, está el desplegar la nueva aplicación desarrollada sin que presente problemas de integración con los demás servicios o sistemas que forman parte de la arquitectura que brindará apoyo a su funcionamiento.

Cuando los desarrollos son tercerizados, los programadores deben replicar en sus ambientes locales la arquitectura del cliente, esta tarea puede resultar ser más difícil que el propio desarrollo, sobre todo en empresas donde la obsolescencia es alta.

Para contrarrestar este tipo de dificultades aportando además una cantidad de beneficios importantes, nacieron los Dockers.

La idea detrás de Docker es crear contenedores ligeros y portables para las aplicaciones software que puedan ejecutarse en cualquier máquina con Docker instalado, independientemente del sistema operativo que la máquina tenga por debajo, facilitando así también los despliegues.

Del mismo modo que los contenedores de mercancías permiten su transporte por barco, tren o camión independientemente de la carga de su interior, los contenedores de software actúan como una unidad estándar de implementación de software que puede contener diferentes dependencias y código. De esta manera, la inclusión del software en contenedor permite a los desarrolladores y los profesionales de TI implementarlo en entornos con pocas modificaciones o ninguna en absoluto.

Los contenedores no son una invención reciente, pero a través de proyectos open source como Docker y rkt de CoreOS, la tecnología de contenedores está hoy en boca de todos.

Ventajas de la tecnología de contenedores

  • Los contenedores de aplicaciones “empaquetan” los recursos necesarios para el funcionamiento de una aplicación para facilitar su uso a administradores y desarrolladores, simplificando tanto la instalación como la puesta en marcha de programas muy complejos. Se obtiene además, una mayor consistencia entre los entornos de prueba y los de producción. Cuando se desarrolla con Docker, se hacen pruebas de la app dentro de un contenedor, y la despliegas dentro de un contenedor. Eso significa que el entorno de pruebas es idéntico al entorno en el que se va a ejecutar el software. En consecuencia, los desarrolladores ganan en tranquilidad y en confianza pues saben que los usuarios finales no se van a topar con problemas relacionados con el ambiente donde fue desplegada su nueva aplicación.
  • Instalación más sencilla debido a que los contenedores de software se inician a partir de imágenes o representaciones portables de un contenedor, incluyendo un programa y todos los componentes requeridos (como librerías, soporte o archivos de configuración). De esta forma se compensan las diferencias entre sistemas operativos. Su instalación se reduce a la introducción de una línea de comando.
  • Las imágenes se pueden transportar cómodamente de un sistema a otro y se caracterizan por una considerable independencia de la plataforma. Lo único que se necesita para iniciar un contenedor desde una imagen es un sistema operativo que soporte contenedores.
  • Cada programa o aplicación funciona independientemente de otros contenedores, de forma que aplicaciones con requerimientos opuestos pueden funcionar en paralelo en el mismo sistema.

En fin, los Dockers son una analogía de software a la elasticidad de una nube de infraestructura, más carga más contenedores activos y viceversa.

Luis Miguel Bevilacqua Experto en Estrategia Digital y Tecnología Financiera Fundador- CEO de FinHack CoFundador de Wheko @FinHackin – FinHack.in