feat: add a devops deployment guide

This commit is contained in:
Favee 2025-05-14 11:30:42 +01:00
parent f42def9851
commit 0de4be3dac
2 changed files with 2 additions and 61 deletions

View file

@ -17,68 +17,9 @@ This document outlines the infrastructure architecture, networking, security, an
## Architecture Diagram ## Architecture Diagram
The diagram below provides an end-to-end view of the VPC layout, AWS services, and CI/CD flow: Below is the end-to-end architecture diagram for our AWS Fargate deployment. You can view the high-resolution diagram in the repository:
```mermaid ![Architecture Diagram](image.png)
flowchart LR
subgraph VPC [VPC (e.g. 10.0.0.0/16)]
direction TB
subgraph Public Subnets
direction LR
PubA[Public Subnet (AZA)]
PubB[Public Subnet (AZB)]
end
subgraph Private Subnets
direction LR
PrivA[Private Subnet (AZA)]
PrivB[Private Subnet (AZB)]
end
IGW[Internet Gateway]
NATGW[NAT Gateway]
ALB[Application Load Balancer]
ECSCluster[ECS Cluster]
ECSService[ECS Fargate Service]
TaskDef[Task Definition]
ECR[ECR Repository]
RDS[(RDS Database)]
ExecRole[(ECS Task Execution Role)]
SG_Fargate[(SG: Fargate Tasks)]
SG_RDS[(SG: RDS)]
end
Internet -->|80/443| ALB
IGW --> ALB
IGW --> NATGW
ALB -->|Target Group| ECSService
PubA --> ALB
PubB --> ALB
ECSService -->|Runs Task| TaskDef
ECSService --> SG_Fargate
ECSService --> ExecRole
PrivA --> ECSService
PrivB --> ECSService
NATGW --> PrivA
NATGW --> PrivB
RDS --> SG_RDS
PrivA --> RDS
PrivB --> RDS
TaskDef -->|Image| ECR
subgraph CI/CD [GitHub Actions]
direction TB
Build[Test & Package] --> Docker[Build & Push → ECR]
Docker --> Terraform[Terraform Apply Infra]
Terraform --> Register[Register Task Def]
Register --> Deploy[Create/Update ECS Service]
Deploy --> Verify[Wait for Service Stable]
end
CI/CD --- ALB
CI/CD --- ECSService
```
--- ---

BIN
image.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB