Skip to content

hongzz0618/aws-containerized-web-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐳 Containerized Web App on AWS

This project shows how to run a containerized web application using AWS services.
It uses ECS Fargate, Application Load Balancer (ALB), and Amazon EFS to deploy a scalable web app with persistent shared storage — all without managing servers.


📐 Architecture

Containerized Web App Diagram

  • ECS Fargate → Runs containers without provisioning or managing servers.
  • Application Load Balancer (ALB) → Routes HTTP traffic to ECS tasks.
  • Elastic File System (EFS) → Provides shared, persistent storage across tasks.

✅ Why This Pattern?

Feature Benefit
Serverless containers No EC2 instances to manage or patch
Scalable Automatically handles traffic with ALB + ECS
Persistent storage EFS keeps files even if containers restart
Flexible Great for CMS, web apps, or apps needing shared state

🌍 Real-World Use Cases

  • Content management systems (CMS)
  • Web apps with file uploads or shared assets
  • Multi-container apps with persistent state
  • Scalable frontend/backend services

📦 What’s Inside

  • Terraform code for:
    • ECS cluster, task definition, and service
    • ALB configuration
    • EFS with access point mounted into containers
  • Bootstrap container that seeds a default index.html into EFS
  • Architecture diagram
  • Deployment scripts

🖼️ Demo Screenshots

Here are a few screenshots of the deployed containerized web app:

Demo Screenshot 1
Demo Screenshot 2 Demo Screenshot 3
Demo Screenshot 4

About

Containerized web app on AWS using ECS Fargate, ALB, and EFS — scalable, persistent, and deployed with Terraform.

Topics

Resources

Stars

Watchers

Forks

Languages