In this video, I'm going to show to you the steps you need to follow, to deploy your docker application on AWS Elastic Container Service (ECS).


  • Create a private or public repository on AWS Elastic Container Registry (ECR).

  • Build and tag your docker image locally.

  • Push your docker image to the repository that you created in step one.

  • Create an Elastic Container Service (ECS) Cluster. Here we have a couple of options, you can create the cluster nodes as serverless nodes by using AWS Fargate or as managed nodes by using EC2 instances, I'll discuss the differences in the video. Also, before creating your ECS cluster, you may need to configure the network part, by creating and configuring VPC, subnets, route tables, and the internet gateway, but don't worry, I'll show you how to.

  • Create a task definition. A task definition exists with the purpose of being a container specification, here you will specify all your container configurations like image, CPU, and memory.

  • Create a service on your ECS cluster. The service is responsible for running and exposing (or not) your container on the cluster nodes. Here we have two types, Daemon and Replica.

You should choose Replica type unless you want at least one container to be running per cluster node, in this case, you should choose Daemon type. Daemon type it's really useful when you want to install agents on the cluster for example because it will guarantee at least one replica of your container running per host, but for normal deployments, you can use Replica type instead.


Check out all the details on the video below - Hands On.




Kenerry Serain

Cloud and Software Architect. Programming and Computing lover and Certified Kubernetes Administrator (CKA), Certificated Kubernetes Developer (CKAD), Certified Kubernetes Security Specialist (CKS) and Certified AWS Solutions Architect.