28 marzo, 2019

Contenedores Tipo Docker

Sharing is caring!

La ingeniería de software comprende de forma general desde detectar las necesidades o problemáticas a resolver con el sistema o aplicación (app), hasta el mantenimiento una vez ya puesto en producción (Sommerville, 2011). Este proceso está categorizado en dos formas:

  • Metodologías tradicionales. Se usan cuando se tiene la gente, los recursos y el capital suficiente para ejecutarlas. Se da prioridad a los procesos sobre los productos. Es usada principalmente por medianas y grandes empresas.
  • Metodologías ágiles. Se usan cuando el personal es poco y el capital es escaso. Se da prioridad a los productos sobre los procesos. Es usada principalmente por las pequeñas y medianas empresas.

Ambas  metodologías tienen como fin el adoptar un enfoque sistemático  y organizado para el trabajo con el fin de poder garantizar un producto de calidad. Sin embargo,  esto no significa que no se puedan presentar problemas en cualquier proceso.

Uno de estos problemas es tener la seguridad de que el softwarefuncione correctamente, debido a que en muchos casos el entorno de desarrollo donde se crea, prueba y depura, puede ser diferente al entorno final (CIO, 2015). Esto puede suceder por varias situaciones, como pueden ser: el cambio de actualizaciones o de versiones de la misma herramienta de desarrollo,  mantenimiento y modificaciones, entre otras.

La solución a este problema son los contenedores. Un contenedores un conjunto de dependencias, librerías y archivos de configuración en un solo paquete (CIO, 2015), los cuales se ejecutan  aislados e independientes y permiten reducir conflictos de compatibilidad entre diferentes entornos de desarrollo. Dicho en otras palabras, son unidades estandarizadas de software para el desarrollo, envío y entrega (docker, 2015).

Específicamente, los contenedores tipo Docker tienen las siguientes características (docker, 2015):

  • Son ligeros, ocupan poco espacio, recursos y procesamiento del dispositivo.
  • Son estandarizados lo cual les permite ser ejecutados en la gran mayoría de plataformas Linux y Windows.
  • Son seguros debido a su proceso de aislamiento.
  • Son compatibles con la infraestructura del cómputo en la nube  y máquinas virtuales (utilizar una computadora para usar el hardware y software de otra) (Jamrich Parsons & Oja, 2008).

Referencias

CIO. (20 de Mayo de 2015). What are containers and why do you need them? Obtenido de Containers: http://www.cio.com/article/2924995/software/what-are-containers-and-why-do-you-need-them.html

Docker. (14 de Mayo de 2015). What is Docker. Obtenido de https://www.docker.com/what-docker

Jamrich Parsons, J., & Oja, D. (2008). cONCEPTOS DE COMPUTACIÓN.México: CENGAGE Learning.

Sommerville, I. (2011). Ingeniería de software . México: Pearson.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *