Reto 7. Desplegando un microservicio en la nube usando PaaS
Clase 33 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
01:40 min - 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
Viendo ahora
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
Muchos PaaS (Plataforma como servicio) permiten desplegar directamente contenedores; las grandes empresas que tienen plataforma cloud también tienen servicios que permiten desplegar contenedores directamente, bien desde una imagen local, bien desde una pública almacenada en Docker Hub.
Si tienes cuenta gratuita o de pago en alguno de esos servicios, merece la pena probarlos y ver la diferencia de precio con respecto al uso de máquinas virtuales completas, pero en este reto nos vamos a centrar en servicios gratuitos. Ya hemos usado sloppy.io, que ofrece un mes de prueba gratuito, en este reto nos centraremos en zeit.co.
Sobre este servicio hay una entrada en el blog de Platzi que también podéis consultar para tener información adicional https://platzi.com/blog/deploy-microservicios/
zeit.co zeit.com es un PaaS para node.js y contenedores que permite desplegar de forma gratuita imágenes siempre que se deje acceso al código fuente (lo que no debería de representar un problema, porque vamos a alojar los fuentes en GitHub) y no se exceda un número de despliegues determinado. El dominio que te asignan es también aleatorio, por lo que no sería en principio adecuado para un negocio. Para aprender, sin embargo, es más que adecuado, o incluso para desplegar pruebas y prototipos. Dado que se trata de un PaaS basado en node, hay que instalar el intérprete de este lenguaje. Aconsejamos que se proceda de la forma siguiente:
Linux (y posiblemente Mac) En este curso siempre hemos aconsejado usar Linux para desarrollar con Docker. Descargar un gestor de versiones de node.js tal como nvm. Instalar alguna de las últimas versiones de node.js con nvm install stable. npm install -g now instala el cliente de zeit.co
Windows Descargar node.js y npm desde sus lugares de instalación oficiales. El tercer paso se llevará cabo de la misma forma.
Tip
Recordar incluir en .dockerignore todos los ficheros que no se quieran subir a ningún lado
Despliegue
El despliegue de un contenedor sólo requiere ejecutar now en el directorio o carpeta en la que se halle el Dockerfile.
Posibles fuentes de problemas
Asegurarse que el contenedor funciona bien localmente y que se ha hecho EXPOSE sobre el puerto 80. Conviene limpiar de vez en cuando los proyectos anteriores, porque a partir de un número determinado no se despliegan correctamente. now rm borra los proyectos que no se estén usando.
Reto:
Desplegar el servicio web en zeit.co para que funcione correctamente.