py_aws mini-project overview (flask web framwork with mongodb)
- Nikunj Rabadiya | Linkedin
- aws EKS (Kubernetes), Docker, Docker-Compose, Jenkins Pipeline (declarative syntax Jenkinsfile)
- git repo: - https://github.com/nikunj436/py_aws or click here
- aws EKS cluster webapp link:- https://bit.ly/3zbGOrx or click here
- Deleting Eks cluster soon cause it incurs charges
Let’s go backwards with project (as it created) .
Jenkins Pipeline
- amazon Ec2 ubuntu instance created with addition port 8080(Jenkins default port).
- dependencies installed -> openjdk 11, docker, jenkins.
- sudo su - jenkins
- aws cli, ekctl(v 1.21 used), cluster config file fetched.
- Jenkinsfile declarative syntax used. Please check my repo.
- see below snapshot how “stage area” actually turns out.



- above snapshot - Rolling update:- one by one new pod is being created and old pod is being deleted
Amazon EKS (using console)
- dependencies:- node group(4 worker node t3.micro), respective IAM, vpc, root or administration(user).
- local machine:- installed:- aws cli, ekctl(v1.21 used).

k8s, Dockerfile, Docker-compose yaml files
- please find a k8s folder for kubernetes yaml files in my repo.
- Dockerfile used to containerization and pushed to docker hub so it can act as k8s webapp deployment image.
- Docker-compose only used on my local machine for sack of completion.
web app overview
- mondodb used for database.
- a simple flask web-form accepting name and it’s get stored in mongodb database.
- Please find below snapshots.


