we need to setup kubernetes cluster on EKS using terraform, infrastructure consist of EKS cluster, VPC, route53 role, OIDC-role and autoscaler-role.
cd infrastructure
terraform plan
terraform apply
after finish setup cluster using terraform we can add supporting tools such as nginx ingress, external-dns atoscaler for kubernetes, and cert manager using letsencryp.
cd infrastructure
sh support.sh
we use public container registry (dockerhub) to store the image.
- first step is login using docker hub account.
- build initial image and push to the repository.
cd nextjs-app
sh initial-image.sh
DEploy nestjs-app on kubernetes using kubernetes manifest
cd nestjs-kubernetes-manifest
kubectl apply -f .
we use github workflow for CI/CD. github workflow wavaliable on
nestjs-app/.github/workflow/rollout.yml'
for utilize that we can sparate the nestjs-app on specific single repository github workflow file also available on .github/workflow/main.yml