Ejemplo: Casos de uso de contenedores en las empresas
Clase 2 de 48 • Curso de Arquitectura de Aplicaciones con Docker 2018
Contenido del curso
Contenedores: ¿Qué son?
- 1

Contenedores: Qué son y cómo encajan con DevOps
08:35 min - 2

Ejemplo: Casos de uso de contenedores en las empresas
Viendo ahora - 3

Bases físicas y lógicas de los contenedores
02:35 min - 4

Reto 1. Herramientas necesarias para trabajar con Docker
07:44 min - 5

Reto 2. Sistemas de contenedores: historia, parecidos y diferencias
01:34 min
Uso básico de contenedores
- 6

Retos en la instalación de Docker en diferentes sistemas
11:25 min - 7

Validación de post instalación de Docker
02:44 min - 8

Uso básico de Docker: Imágenes, contenedores de Docker
13:25 min - 9

¿Qué hay en un contenedor?
10:41 min - 10

Volúmenes y almacenamiento de la información en contenedores
03:03 min - 11

Gestionando los contenedores instalados
08:21 min - 12

Reto 3. Trabajando con imágenes 'oficiales'
01:19 min - 13

Solución al reto 3
04:26 min - 14

Reto 4. Uso de imágenes locales
00:55 min - 15

Plugins: funcionalidad añadida y algún plugin interesante
06:56 min - 16

Configuración de Docker
00:59 min
Microservicios; APIs con REST
- 17

Protocolo HTTP, órdenes y mensajes de estado
04:22 min - 18

Qué es un API REST y buenas prácticas en su diseño
04:15 min - 19

Implementando un API REST en diferentes lenguajes
02:52 min - 20

Implementando un API REST en Python y ejecutándolo
04:24 min - 21

Reto 5. Diseño de una estructura de datos básica en Python
01:38 min
Contenedores y microservicios
- 22

Aislando microservicios en contenedores: Uso de Dockerfiles
11:31 min - 23

Puertos y cómo configurarlos
07:59 min - 24

Invocando contenedores
06:53 min - 25

ENTRYPOINT y CMD
03:52 min - 26

Trabajando con datos: Volúmenes
04:42 min - 27

Reto 6. "Contenedorizar" una aplicación usando Dockerfiles y despliegue
01:51 min - 28

Herramientas básicas en arquitecturas de microservicios
02:29 min - 29

Instalación de docker-compose
02:32 min - 30

Componiendo servicios con docker-compose.
09:30 min - 31

Usando docker stack deploy
05:39 min - 32

Creando puentes de red
08:42 min - 33

Reto 7. Desplegando un microservicio en la nube usando PaaS
01:42 min
Despliegue de contenedores en la nube
- 34

Instalación del cliente de Azure
03:14 min - 35

Clientes de servicios cloud y como usarlos en nuestra aplicación
13:37 min - 36

Creación de un contenedor en la nube
08:08 min - 37

Despliegue seguro de microservicios
07:44 min - 38

Integrando contenedores en aplicaciones en la nube
04:49 min - 39

Instalando Docker Cloud
01:54 min - 40

Iniciación al API de Docker Cloud
07:35 min - 41

Usando cloud.docker.com
07:01 min - 42

Uso de Docker Cloud, cómo desplegar un servicio en un contenedor
07:40 min - 43

Cómo desplegar un stack
10:43 min - 44

Reto 9: desplegando en una nube comercial
01:37 min
Orquestación de contenedores
Introducción
Los contenedores permiten empaquetar toda la lógica necesaria para ejecutar un servicio o en varios contenedores, crear un sistema complejo que permita ejecutar una aplicación completa. En ese sentido, el uso de contenedores en las empresas y entre los desarrolladores de software libre no ha hecho más que aumentar. A continuación veremos diferentes casos de uso en los que se ha puesto a trabajar.
Caso 1: Test de módulos del lenguaje de programación Perl6
Perl6 es un lenguaje de programación moderno y funcional. Sin embargo el principal problema es que las distribuciones más actuales están en código fuente. Esto es un inconveniente a la hora de testear un módulo en un entorno de integración continua tal como Travis, porque la compilación puede durar más de 15 minutos. Adicionalmente, hay que instalar una serie de módulos necesarios para hacer el test, por lo que antes siquiera de hacer la función pretendida ya se han perdido 20 minutos. Si hay muchos tests, también puede ser un problema, porque Travis, en su edición gratuita, no permite más que 50 minutos de test. Con el módulo de test de Perl6, ese tiempo se reduce al necesario para descargar el contenedor, que no suele exceder un segundo.
Caso 2: Platzi
El sistema de enseñanza de Platzi es exclusivo y está desarrollado por la sección de Producto de la empresa. Se partía originalmente de un sistema monolítico, pero actualmente para trabajar con la demanda de los usuarios de los cursos se ha dividido en seis microservicios, todos ellos contenedorizados usando Docker. Docker se usa también para el entorno de desarrollo y poder trabajar con un entorno de desarrollo uniforme desde cualquier sistema operativo, Macs o PCs con Linux. En este caso, Docker permite un diseño de la aplicación más adaptado para trabajar en las nubes comerciales, tales como Amazon o Azure.
Caso 3: Paypal
En el blog de Docker aparecen diferentes casos de éxito, el más llamativo de los cuales es el de Paypal, que aparte de usar Docker para uniformizar el entorno de desarrollo, llegan a desplegar 150000 contenedores, con un ahorro considerable en el coste del cloud, al ser los contenedores mucho más ligeros y permitir desplegar la infraestructura de forma desacoplada y rápida.