Skip to content

AWS CDK IaC and Code for Lambda functions on top of Docker containers.

License

Notifications You must be signed in to change notification settings

san99tiago/aws-cdk-lambda-docker-templates

Repository files navigation

🐳 AWS-CDK-LAMBDA-DOCKER-TEMPLATES 🐳

The purpose of this project is to showcase how to deploy AWS Lambda Functions with Docker images on top of multiple programming languages (like Python or NodeJs), so they can be used to leverage different personalized solutions in a matter of minutes. The sky is the limit!

General Architecture 🔨


Detailed Docker explanation 🔍

The following README files, created by san99tiago, explain how the Lambda functions for this project work in detail for different programming languages (base-images):

AWS CDK ☁️

AWS Cloud Development Kit is an amazing open-source software development framework to programmatically define cloud-based applications with familiar languages.

My personal opinion is that you should learn about CDK when you feel comfortable with cloud-based solutions with IaC on top of AWS Cloudformation. At that moment, I suggest that if you need to enhance your architectures, it's a good moment to use these advanced approaches.

The best way to start is from the Official AWS Cloud Development Kit (AWS CDK) v2 Documentation.

Dependencies 🚦

The dependencies are explained in detail for each project, but the most important ones are AWS-CDK, Python and NodeJS.

My advice is to primary understand the basics on how CDK works, and then, develop amazing projects with this incredible AWS tool!.

Software dependencies (based on project)

  • Visual Studio Code
    Visual Studio Code is my main code editor for high-level programming. This is not absolutely necessary, but from my experience, it gives us a great performance and we can link it with Git and GitHub easily.

  • NodeJs
    NodeJs is a JavaScript runtime built on Chrome's V8 JavaScript engine programming language. The community is amazing and lets us handle async functionalities in elegant ways.

  • Python
    Python is an amazing dynamic programming language that let us work fast, with easy and powerful integration of different software solutions.

Libraries and Package dependencies (based on project)

  • CDK CLI (Toolkit)
    To work with the CDK, it is important to install the main toolkit as a NodeJs global dependency. Then, feel free to install the specific language AWS-CDK library (for example: aws-cdk.core).

Usage 💫

All projects are well commented/documented and most of them have specifications and remarks for their purpose and I/O.

Special thanks 🎁

  • Thanks to all contributors of the great OpenSource projects that I am using.

Author 🎹

Santiago Garcia Arango

Senior DevOps Engineer passionate about advanced cloud-based solutions and deployments in AWS. I am convinced that today's greatest challenges must be solved by people that love what they do.