Puede utilizar los contenedores para crear aplicaciones distribuidas al dividir su aplicación en tareas o procesos independientes (p. ej.: microservicios). Por ejemplo, puede disponer de contenedores independientes para sus trabajadores del servidor web, servidor de aplicaciones, cola de mensajes y back-end. Los contenedores resultan ideales para ejecutar tareas o procesos individuales, de modo que puede utilizarlos como unidad base para la realización de una tarea cuando amplíe o reduzca la capacidad. Cada componente de su aplicación puede estar formado a partir de diferentes imágenes de contenedor. Los contenedores de Docker aíslan el proceso, lo que le permite ejecutar y escalar distintos componentes al mismo tiempo, independientemente del lenguaje de programación o de las bibliotecas que se ejecutan en cada uno de los contenedores.
Amazon EC2 Container Service
IntroducciónPuede usar los contenedores para realizar trabajos por lotes/ETL al empaquetar el trabajo en un contenedor e implementarlo en un clúster compartido. Puede ejecutar versiones distintas del mismo trabajo o varios trabajos en el mismo clúster o incluso en la misma instancia, ya que los contenedores están aislados. Además, puede compartir la capacidad del clúster con otros procesos, como aplicaciones, y aprovechar las fluctuaciones en la carga del clúster. Puede comenzar los trabajos con rapidez y ampliarlos dinámicamente para responder a la demanda, mejorando así el uso de los recursos.
Puede utilizar los contenedores para obtener una integración e implementación continuas, ya que Docker proporciona un sistema para el control de versiones de las imágenes. Puede configurar el proceso de creación para extraer el código de un repositorio, crearlo, empaquetarlo en una imagen de Docker y enviar la imagen recién creada a un repositorio de imágenes. A continuación, puede hacer que el proceso de implementación extraiga la nueva imagen del repositorio, ponga a prueba la aplicación y la implemente en sus servidores de producción. Además, se evita que la aplicación funcione en el entorno de desarrollo pero falle en el de producción, ya que el daemon de Docker es el mismo en los equipos de desarrollo, pruebas y producción.