SOAPFT 서비스의 AWS 인프라를 Terraform으로 정의한 코드입니다.
- Region: ap-northeast-2 (서울)
- Network: VPC (10.0.0.0/16), Public Subnet(ALB), Private Subnet(ECS, RDS)
- 주요 서비스:
- ECS (Fargate): NestJS 애플리케이션 컨테이너 실행
- RDS (PostgreSQL): 데이터베이스
- S3 + CloudFront: 정적 파일(이미지) 저장, CDN 배포
- ECR: 컨테이너 이미지 저장소
- ALB: HTTPS 트래픽 라우팅
- ACM + Route53: 인증서 및 DNS 관리
- 사용자 요청: Users → Route 53 → Internet Gateway → Application Load Balancer
- 컨테이너 처리: ALB → ECS Service → EC2 Instances (Auto Scaling)
- 데이터 저장: EC2 Instances → RDS PostgreSQL
- 파일(이미지) 업로드: Users → CloudFront CDN → S3 Bucket
- AWS 서비스 접근: EC2 Instances → VPC Endpoints → AWS Services (ECR, CloudWatch, Secrets Manager)
infra/
├─ environments/ # 환경별 변수(tfvars)
├─ modules/ # VPC, ECS, RDS, ALB, S3, ECR 등 모듈화 코드
├─ main.tf
├─ variables.tf
└─ outputs.tf
