Skip to content

codewithmuh/django-aws-eks-github-actions

Repository files navigation

Deploy Django Project on AWS Elastic Kubernetes (EKS) using GitHub Actions CI/CD Pipeline and Terraform

We will utilize GitHub Actions and Terraform to deploy our Django project on AWS EKS. readme (9)

Overview:

We will deploy Django Application on aws Elastic Kubernetes(EKS). We will use Github actions for the ci/cd pipeline. We will use EC2 as the self-hosted runner for our GitHub Actions. We will integrate Sonarcube for code analysis and Trivt Image scan to scan our docker images. Also, we will integrate Slack to get Build/deployment notifications.

Support

Buy Me A Coffee

Prerequisite

You should have basic Knowledge of AWS services, Docker, Kubernetes, and GitHub Actions.

Table of Content/Steps:

1. Create an AWS EC2 Instance and an IAM Role

2. Add a Self Hosted Runner To AWS EC2

3. Python Code Quality Check using Pylint

4. Docker Installation and Running SonarQube Container

5. Integrate SonarQube with GitHub Actions

6. Installation of tools (Java JDK, Terraform, Trivy, Kubectl, Node.js, NPM, AWS CLI)

7. Provision AWS EKS With Terraform

8. Dockerhub and Trivy Image Scan Setup

9. Deploy Application(image) to AWS EKS

10. Integrate Slack Notifications

11. Running Final/Complete Github actions Workflow

12. Delete the infrastructure (To Avoid Extra Billing, if you are just using it for learning Purposes)

Article Link:

Youtube Video Link:

coming Soon