Skip to content

Deployment Overview

Deploying the ECS Express Mode demo is a two-command workflow: terraform init to initialize the working directory and download providers, then terraform apply to provision the entire stack. The Express Gateway Service
The aws_ecs_express_gateway_service Terraform resource that provisions an ECS service with managed ALB, auto scaling, and simplified configuration for HTTP/HTTPS web applications and APIs.
resource handles most of the infrastructure wiring automatically.

When terraform apply completes, Express Mode creates and configures the following resources on your behalf:

ResourceProvisioned ByPurpose
Shared ALB
The Application Load Balancer shared by up to 25 Express services in the same VPC using Host header routing rules.
Express ModeReceives HTTPS traffic and routes to tasks via Host header rules
Target GroupExpress ModeHealth checks and load distribution across running tasks
Auto ScalingExpress Mode

Scales tasks between min and max count based on the configured metric

Application URL
The unique Express-provisioned HTTPS URL on *.ecs.<region>.on.aws used for all normal application traffic.
Express Mode

Unique HTTPS endpoint on *.ecs.<region>.on.aws for application access

RollbackAlarm
A CloudWatch metric alarm created by Express Mode that triggers automatic deployment rollback when new tasks fail ALB health checks.
Express Mode

CloudWatch alarm that triggers automatic rollback on failed deployments

VPC
Virtual Private Cloud — an isolated virtual network within AWS where resources are deployed.
and Subnets

Your Terraform code

Network foundation with public subnets, internet gateway, and route table

IAM RolesYour Terraform code

Task execution, infrastructure, and task roles with least-privilege policies

ECS ClusterYour Terraform codeLogical grouping for the Express service

After terraform apply succeeds, verify the deployment is healthy by checking three things:

  1. Terraform outputs — retrieve the Application URL
    The unique Express-provisioned HTTPS URL on *.ecs.<region>.on.aws used for all normal application traffic.
    and ALB DNS name from terraform output
  2. Service status — confirm desired count equals running count in the ECS console or via aws ecs describe-services
  3. Health endpoint — curl the health check path and confirm an HTTP 200 response

The following pages cover each phase in detail: