Full-Stack ToDo application hosted on AWS using Amazon EKS with React Frontend and Nginx reverse-proxy and Flask backend services
- This application allows performing CRUD operations on Todo items stored on AWS DynamoDB.
- Each Todo item can optionally have an attachment image stored on Amazon S3.
- Each user ONLY has access to Todo items that they created. Users authenticated and issued a RS256 signed JWT tokens by Auth0 verified using Auth0 JWKS endpoint.
- Database(DynamoDB): Create the
Todos-{env}
table on Amazon DynamoDB. The database is used to store the Todo items data. - Filestore(S3): Create the AWS S3
attachments
bucket. The S3 bucket is used to store Todo items attachment image
Building Images
docker-compose build
Running Images
docker-compose up
- eksctl: Install eksctl for creating the cluster on EKS
- helm: Install helm to deploy assests on the EKS cluster
Create an EKS Cluster on AWS with worker-nodes to run the pods
eksctl create cluster -f cluster.yaml
Install the helm chart to deploy the application on the EKS cluster
helm install todo-app ./charts/todo-app