Browse the Repo

file-type-icon.circleci
file-type-icon_docs
file-type-iconexamples
file-type-icondeploy-ecs-task
file-type-icondocker-daemon-service
file-type-icondocker-fargate-service-with-alb
file-type-icondocker-fargate-service-with-efs-volume
file-type-icondocker-fargate-service-with-nlb
file-type-icondocker-fargate-service-without-lb
file-type-icondocker-fargate-spot-service-with-alb
file-type-icondocker-service-with-alb-and-nlb
file-type-icondocker-service-with-alb-autoscaling
file-type-icondocker-service-with-alb-canary
file-type-icondocker-service-with-alb
file-type-icondocker-service-with-autoscaling
file-type-icondocker-service-with-canary-deployment
file-type-icondocker-service-with-elb
file-type-icondocker-service-with-private-discovery
file-type-icondocker-service-with-public-discovery
file-type-icondocker-service-without-elb
file-type-icondocker-vpc-service-with-alb
file-type-iconexample-docker-image
file-type-iconDockerfile
file-type-iconREADME.md
file-type-iconserver.js
file-type-iconexample-ecs-instance-ami
file-type-iconexample-vpc
file-type-iconmodules
file-type-icontest
file-type-icon.gitignore
file-type-icon.pre-commit-config.yaml
file-type-iconCODEOWNERS
file-type-iconLICENSE.txt
file-type-iconREADME.adoc
file-type-iconcore-concepts.md
file-type-iconsetup.cfg
file-type-iconterraform-cloud-enterprise-private-module-...

Browse the Repo

file-type-icon.circleci
file-type-icon_docs
file-type-iconexamples
file-type-icondeploy-ecs-task
file-type-icondocker-daemon-service
file-type-icondocker-fargate-service-with-alb
file-type-icondocker-fargate-service-with-efs-volume
file-type-icondocker-fargate-service-with-nlb
file-type-icondocker-fargate-service-without-lb
file-type-icondocker-fargate-spot-service-with-alb
file-type-icondocker-service-with-alb-and-nlb
file-type-icondocker-service-with-alb-autoscaling
file-type-icondocker-service-with-alb-canary
file-type-icondocker-service-with-alb
file-type-icondocker-service-with-autoscaling
file-type-icondocker-service-with-canary-deployment
file-type-icondocker-service-with-elb
file-type-icondocker-service-with-private-discovery
file-type-icondocker-service-with-public-discovery
file-type-icondocker-service-without-elb
file-type-icondocker-vpc-service-with-alb
file-type-iconexample-docker-image
file-type-iconDockerfile
file-type-iconREADME.md
file-type-iconserver.js
file-type-iconexample-ecs-instance-ami
file-type-iconexample-vpc
file-type-iconmodules
file-type-icontest
file-type-icon.gitignore
file-type-icon.pre-commit-config.yaml
file-type-iconCODEOWNERS
file-type-iconLICENSE.txt
file-type-iconREADME.adoc
file-type-iconcore-concepts.md
file-type-iconsetup.cfg
file-type-iconterraform-cloud-enterprise-private-module-...
EC2 Container Service (ECS) Cluster

EC2 Container Service (ECS) Cluster

Deploy a cluster of servers for use with EC2 Container Service (ECS), Amazon's container orchestration system

Code Preview

Preview the Code

mobile file icon

README.md

down

Example Docker Image

This folder defines a small Docker image we can use for testing. It contains a Node.js web app that returns the text it finds in two places:

  1. The environment variable SERVER_TEXT. This is passed in via Terraform, so we can use it to tell when a new version of the code is deployed.
  2. A file it downloads from the S3 path defined in the environment variable S3_TEST_FILE. This file is uploaded to S3, so we can use it to tell if ECS Task IAM Roles are working.

If either environment variable is not set, the server returns the text "Hello world!'.

This image has been pushed to the gruntwork Docker Hub account under the name gruntwork/docker-test-webapp.

Build the image

docker build -t gruntwork/docker-test-webapp .

Run the image

docker run --rm -it -p 3000:3000 gruntwork/docker-test-webapp

Questions? Ask away.

We're here to talk about our services, answer any questions, give advice, or just to chat.

Ready to hand off the Gruntwork?