Skip to content

NotesContainers

Containers

ECS, Fargate, EKS, and ECR — how AWS runs containers without (or with) you managing the servers underneath.

Updated Sep 26, 2026

Containers Quick Notes




Core Vocabulary

  • Image: Layered package of app + dependencies.
  • Registry: Where images live (ECR on AWS).
  • Task / pod: Running unit of one or more containers.

Amazon ECS

  • Definition chain: container definition → task definition (CPU/mem, task role) → service.
  • Launch types:
    • EC2: You pay for instances + EBS.
    • Fargate: You pay for vCPU + memory the task requests (no servers).
  • Scale services with Application Auto Scaling (CPU, memory, ALB request count).

Amazon EKS

  • Managed Kubernetes control plane (multi-AZ); workers in your VPC.
  • Vocabulary: cluster / node / pod / service.
  • Scale nodes with Kubernetes Cluster Autoscaler + EC2 Auto Scaling groups.
  • Fargate also works with EKS for serverless pods.

When to Pick What

Need: Choose

AWS-native containers, simple: ECS

Kubernetes APIs / portability: EKS

No EC2 to manage: Fargate (ECS or EKS)

Private image store: ECR

  • Long app bootstrap (>45 min): Golden AMI + thin user data (Beanstalk / ECS hosts alike).
  • Microservices that already speak ActiveMQ/JMS → Amazon MQ (not a forced SNS/SQS rewrite).