Skip to content

nihalbawankar/aws-terraform-gitlab-ci-cd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AWS Infrastructure Automation using Terraform & GitLab CI/CD

This project demonstrates an end-to-end CI/CD pipeline that provisions AWS infrastructure using Terraform and deploys a Dockerized Nginx application on an EC2 instance.

πŸš€ Features

  • Infrastructure provisioning using Terraform (VPC, Subnet, EC2, Security Groups)
  • CI/CD automation using GitLab CI
  • Secure SSH key generation using Terraform TLS provider
  • Docker-based Nginx deployment
  • Automated application testing
  • Manual infrastructure teardown

πŸ› οΈ Tech Stack

  • AWS (EC2, VPC, Security Groups)
  • Terraform
  • GitLab CI/CD
  • Docker
  • Linux

πŸ“‚ Pipeline Stages

  1. Apply – Provisions AWS infrastructure
  2. Deploy – Deploys Dockerized Nginx to EC2
  3. Test – Verifies application availability
  4. Destroy – Manually destroys infrastructure

πŸ” Security

  • No hardcoded secrets
  • SSH keys generated dynamically
  • Artifact-based key handling across pipeline stages

πŸ“Œ Usage

  1. Configure AWS credentials as GitLab CI variables
  2. Run pipeline
  3. Access application via EC2 public IP

  • GitLab pipeline success
  • Nginx running in browser

About

Automated AWS infrastructure provisioning and application deployment using Terraform and GitLab CI/CD with Docker-based workloads.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages