AWS SAM y AWS Lambda docker Container Image tutorial con PYTHON USANDO A...

Objetivo de este post

 vamos a crear un proyecto con AWS SAM que nos permita crear automaticamente un lambda de tipo container y podamos a mismo tiempo subir la imagen a AWS ECR


SAM nos va a facilitar todo es casi magico si deseas ver esto tengo un video donde lo explico pero si prefieres leer continua mas abajo

AWS Lambda type container with AWS SAM



 

Vamos con los pasos, es realmente fácil así que vamos a enumerar los paso:

1 Instalar AWS SAM 

2 Configuración de ambiente local para lanzar comandos en AWS

3 Ejecutar los comandos de SAM 

4 Seguir con el wizard de AWS SAM 

5 Ejectuar comandos de SAM para hacer el despliegue

6 disfrutar de la vida porque SAM ya hizo todo 


1 instalar AWS SAM 

Para hacer esto se puede hacer los siguiente:

curl "https://github.com/aws/aws-sam-cli/releases/latest/download/aws-sam-cli-linux-x86_64.zip" -o "sam.zip"
unzip sam.zip -d sam-installation
./sam-installation/install

una breve explicacion es que descargas el zip con el instalador lo descomprimes y al final lo instalas 


2 Configuración de ambiente local para lanzar comandos en AWS

para este paso tengo un video que explica todo muy claramente porfa síguelo

como configurar tu ambiente local para usar AWS CLI




3 Ejecutar los comandos de SAM

el siguiente paso es ejecutar comandos de AWS SAM para inicializar el proyecto debemos escribir en la consola y en la carpeta que desemos el proyecto el comando sam init

luego debemos seguir el wizard buscando la opcion de lambda con imagen


 

la idea es crear una plantilla base de tipo imagen al final deberias tener la siguiente pantalla del wizzard esta pregunta es importante what package type would you like to use? por favor escoje el numero 2

 

 Recuerda que el wizard va a cambiar con el pasar del tiempo y aunque te diga la combinación de números es probable que sea incorrecto, así que en esta parte solo te puedo guiar muy superficialmente.


Luego de esto ya tendremos el código listo, quedaría algo así



Tendríamos una plantilla con lo mínimo necesario, si te das cuenta en el objeto/archivo template.yaml podrás encontrar la lambda de tipo imagen línea 18 de la imagen anterior

y en el archivo dockerfile tendrás listo un docker para el lenguaje que hallas seleccionado en el wizard de creación.

Ahora solo faltaría el comando de deploy

Podrías pasar directamente al comando sam deploy --guided y el proceso de aws sam inicia compilando la imagen de docker y luego subiéndola automáticamente a AWS ECR para posterior y finalmente crear tu lambda y relacionarlo todo.

Para entrar más en detalle al deployar SAM hará los siguientes pasos de forma ordenada

1 hara build a tu dockerfile

2 Creara el aws ECR con el nombre del proyecto

3 Subira tu docker recién creado a la ruta de AWS ECR

4 Creara el lambda y le asociara la ruta de AWS ECR 

5 dara permisos a tu lambda y al AWS ECR para que puedan interacturar


te diste cuenta de que fácil es!!! 





 

 

 

 

Comentarios

Entradas populares de este blog

Solucion: Docker Error: No such container:

Los unicas 4 herramientas que necesitas para volverte un master en Devops