Infraestrutura AWScom Node.js+PostgreSQL na AWS com Terraform e Docker, e Automacao via GitHub Actions
Este projeto consiste em uma pipeline de CI/CD totalmente automatizada utilizando GitHub Actions, Terraform e Docker para provisionamento e deploy de uma aplicação Node.js na AWS.
A infraestrutura é gerenciada como código (IaC), garantindo reprodutibilidade, escalabilidade e facilidade de destruição e recriação do ambiente.
O que o projeto faz
O sistema automatiza todo o ciclo de vida da aplicação:
-
Build da aplicação
- A aplicação Node.js é empacotada em uma imagem Docker.
-
Publicação da imagem
- A imagem é enviada para o Docker Hub automaticamente.
-
Provisionamento de infraestrutura
-
O Terraform cria toda a infraestrutura na AWS, incluindo:
- EC2 (servidor da aplicação)
- RDS (banco de dados)
- Security Groups
- Dependências de rede
-
O Terraform cria toda a infraestrutura na AWS, incluindo:
-
Deploy automatizado
- A EC2 baixa a imagem Docker e executa a aplicação.
-
Destruição sob demanda
- Um workflow separado permite destruir toda a infraestrutura com um clique.
Tecnologias utilizadas
- GitHub Actions → CI/CD pipeline
- Terraform → Infraestrutura como código (IaC)
- AWS (EC2, RDS, VPC, Security Groups) → Cloud provider
- Docker → Containerização da aplicação
- Docker Hub → Registry de imagens
- Node.js → Aplicação backend
Imagens do repositório
Checar se aplicação se conectou corretamente
( Seu IP da EC2 conectando na porta 3000 )
Checar se o docker está rodando na EC2
( Entrar na maquina com sua chave .pem criada ssh -i my-key.pem ec2-user@SEU_IP_EC2, e la dentro emitir um docker ps )
Checar se a aplicação está conectando com o banco
( Use os comandos abaixo pra confirmar
docker exec -it node-app printenv | grep DB_HOST
docker logs node-app
nslookup app-db.cclwyemq4f8s.us-east-1.rds.amazonaws.com
cat /home/ec2-user/db_debug.txt
getent hosts app-db.cclwyemq4f8s.us-east-1.rds.amazonaws.com )
Link do repositório https://github.com/RafaelFerreiraNeves/Infraestrutura-AWS-Node.js-PostgreSQL-na-AWS-com-Terraform-e-Docker-e-Automacao-via-GitHub-Actions.git






Nenhum comentário:
Postar um comentário