
Explore AWS ECS and Fargate in this hands-on master class, covering clusters, task definitions, networking, environment variables, secrets, parameter store, service auto scaling, and CI/CD pipelines.
Meet the instructor, a software engineer and mobile developer with cloud practitioner credentials who builds scalable websites and apps; he teaches on Udemy and shares GitHub and LinkedIn links.
Start with a Docker primer, then explore ECS and Fargate basics. Create the structure in your console, review pricing, and compare ECS and Fargate with Beanstalk for pros and cons.
Explore how Docker packages apps into portable containers that run on any OS, enabling consistent behavior and easier deployment, and contrast containerization with virtual machines.
Discover how Elastic Container Service enables deploying Docker containers on AWS, compare EC2-backed provisioning with Fargate's serverless backend, and learn how containers are placed and registered with application load balancer.
Create an IAM user with programmatic and console access, attach policies, and securely download the access key and secret key. Sign in to manage resources and prepare for Fargate.
Launch a web server container on AWS Fargate with ECS, create the Engine X task and service in a cluster, and verify the public endpoint.
Explore ECS pricing for EC2 and Fargate, including on-demand CPU and RAM costs, spot pricing risks, and a $20 budget.
Explore ecs vs eks vs beanstalk and how Docker runs on ec2 and fargate, with eks using Kubernetes and Beanstalk offering simple Docker deployment.
Master Docker basics with hands-on practice, including installing Docker, running containers, building images with a Dockerfile, and pushing or pulling them to Docker Hub or AWS ECR.
Install Docker across Mac, Windows, and Linux, verify with a hello world container, and work with images and containers using the official docs.
Explore docker basics by listing images and containers, pulling an engine x image, running a container with port mapping, inspecting and managing containers, and verifying web server access.
Learn to create docker containers from scratch using dockerfile, base images, and commands; understand run vs entrypoint, multi-stage builds to shrink image size, and basic container workflows.
Learn how to set up an ECS cluster with EC2 instances, register agents, configure IAM roles, and deploy tasks within a VPC architecture using public subnets.
Create four IAM roles for ECS and Fargate—X instance role, X role, X task execution role, and X autoscaling role—to let X manage clusters, run tasks, and scale services.
Create the core infrastructure with an AWS CloudFormation YAML to provision a VPC, two subnets, an Internet gateway, and routing, then deploy and validate the stack.
Learn to create ECS clusters on EC2 and on Fargate via the AWS Management Console, configuring VPC subnets and an auto-scaling group.
Create and manage ECS clusters with CloudFormation templates, deploying Fargate and EC2 launch types across subnets with auto scaling, security groups, and VPC integration.
Create and manage Amazon ECS clusters with the ECS CLI, using CloudFormation outputs to collect VPC and subnet IDs, and deploy EC2 launch type clusters on AWS.
Explore ecs task definitions as the container blueprint in json, detailing image, port bindings, memory, cpu, environment variables and logging; ecs service coordinates tasks and traffic with a load balancer.
Create a new fargate task definition, add a container with the wisdom image from Docker Hub, expose port 80, and review the JSON task definition.
Build and run a task from a task definition, then deploy an ECS service in a VPC with subnets and security group rules to expose a public HTTP endpoint.
Create an ecs task definition for the ec2 launch type using the existing image, configure environment, storage, monitoring, and tags, and enable bridge networking with the execution role.
Hands-on with ECS on EC2 launch type: update task definitions, launch a task, access the container via a mapped host port, and adjust inbound rules, then proceed to a service.
Deploy an ECS service on the EC2 launch type, run a task, and verify API reachability while comparing services versus standalone tasks and noting security port issues.
Discover how ECS task placement and constraints allocate containers on EC2 instances, using CPU, memory, and port requirements, with bin pack, random, and spread strategies and CQ language constraints.
Explore ECS network modes, from bridge to host and VPC options, and learn how port mapping, unique IP per task, and ENI configurations affect connectivity and performance on ECS.
Set up a two-availability-zone vpc with public and private subnets, fronted by an application load balancer and a net gateway, with FortiGate in private subnets, using a CloudFormation template.
Master load balancing for ECS and Fargate, using dynamic port mapping in EC2 bridge mode and awsvpc, with the application load balancer routing to container ports via security groups.
Create simplehttp task definitions for EC2 and Fargate, test with a load balancer, and verify by running a container on port 8000 with a hello world message.
Set up an application load balancer as the entry point for ECS containers on Fargate and EC2 launch types, with path-based routing and a static, secure URL.
Scale ECS services with target tracking, step scaling, and scheduled scaling driven by CloudWatch metrics, and leverage capacity providers to auto-provision EC2 or Fargate capacity for seamless task placement.
Spin up an AWS EC2 instance running Amazon Linux 2, install Apache bench, and generate load toward the public load balancer DNS to prep for scaling.
Learn ECS task auto scaling to dynamically adjust service task counts based on CPU utilization, using target tracking or step scaling with CloudWatch alarms.
Learn to dynamically scale ECS via a cluster capacity provider that links an auto scaling group to handle task placement, scale-out, and scale-in based on CloudWatch alarms.
Explore Amazon elastic container registry for storing, managing, and deploying docker images. See how ecs and iam enable pull access, s3 backing, image scanning, and lifecycle tagging.
Navigate the end-to-end workflow of Amazon ECR, from authentication and repository creation to tagging, pushing, and updating container images, then deploy the refreshed image to an ECS cluster.
Learn to fetch, tag, and push a Docker image to Amazon ECR, authenticate the Docker client, and update task definitions to deploy a service and verify via load balancer endpoint.
Implement continuous integration and continuous delivery pipelines with code commit, code build, and code deploy to automate testing, building, and deploying Dockerized apps to AWS ECS using blue-green deployments.
Learn how to perform rolling updates for ECS services by configuring minimum health percent and maximum capacity, controlling task termination and creation to upgrade from v1 to v2.
Learn to create an AWS CodeCommit repository, configure git and IAM permissions, clone and fetch from GitHub, and commit and push code to AWS CodeCommit.
Create a CodeBuild project linked to CodeCommit repository, configure IAM roles and policies, and use a build spec to build, tag, and push a Docker image to ACR with logs.
Automate container delivery with code commit, code build, and code pipeline to build and push images to ACR, then update the ECS task definition and redeploy the service.
Master blue/green deployment on ecs with CodeDeploy, creating a new task set and shifting traffic through the load balancer. Compare linear, canary, and all-at-once strategies.
Implement blue/green deployment on ECS with CodeDeploy by configuring target groups and ALB listeners, creating a blue/green service, and updating the code pipeline and build specs.
Implement blue/green deployment on ECS using CodePipeline and CodeDeploy in a hands-on walkthrough. Edit build spec, create app spec and task definition, and test traffic switch.
Learn how Secrets Manager and Parameter Store securely inject container configurations, enable secret rotation with Lambda, encrypt with CMS key, support versioning and hierarchical paths, and integrate with CloudFormation.
Inject environment variables into ECS containers to set runtime behavior, such as db url, without code changes. Use secret manager, parameter store, or S3 to securely load values at startup.
Configure environment variables for containers using parameter store, secrets manager, or an S3 bucket, after updating the task execution role with permissions, and deploy via a task definition and service.
Learn to create plain and encrypted parameters in AWS Systems Manager Parameter Store, configure ECS task definitions to inject them as environment variables, and decrypt values inside containers.
Learn to use AWS Secrets Manager with ECS to securely store and rotate credentials, inject secrets into task definitions, and manage deployments with CloudTrail and CloudWatch.
Learn to import environment variables from an S3-hosted file for ECS tasks. Create a .m suffix file with key-value pairs and update the task definition to load from S3.
Store credentials in AWS Secrets Manager and fetch them at runtime to access a private Docker image. Create an ECS task definition with private registry authentication to run that image.
This course requires you to download Docker from the docker website. If you are a Udemy Business user, please check with your employer before downloading software.
If you'd like to run Docker containers on AWS the right way, look no further than ECS!
ECS is the most integrated way to run your Docker services.
In this course, we will learn all the various options which will allow you to deploy any application onto your ECS Clusters.
EC2 Launch Mode? Covered. Fargate Launch Mode? Covered too
WHAT YOU WILL LEARN
Deploy ECS Clusters using the AWS Management Console, CloudFormation, and the ECS CLI
Setup ECS and Fargate services, alongside ECS Task Definitions
Learn about Task Placement Strategies and Constraints
Learn the ECS Networking Modes
ECS Service Auto Scaling and Load Balancing
EC2 Instance Scaling through ECS Cluster Capacity Providers
Amazon ECR: Elastic Container Registry
Perform CICD on ECS with CodeCommit, CodeBuild, CodeDeploy, CodePipeline
Blue / Green Deployments with ECS and CodeDeploy
Environment Variables from ECS (hardcoded, SSM, Secrets Manager, S3)
Connecting ECS to a Private Docker Repository such as Docker Hub
ECS Persistent Storage Options with EFS
Microservices with ECS: ECS Service Discovery, App Mesh
And that's just a sneak peek.
With over 8 hours of video, you will be mastering the ECS Service.
Pre-requisites:
In this course, we do not cover the basics of AWS and lightly cover Docker to focus entirely on the usage of Amazon ECS.
With AWS becoming much more than a buzzword, I've decided it's time for students to properly learn how to become an Amazon ECS & Fargate Professional. So, let's kick start the course! You are in good hands!
This Course Also Comes With:
Lifetime Access to All Future Updates
A responsive instructor in the Q&A Section
Full downloadable code to reproduce the hands-on on your machine
Udemy Certificate of Completion Ready for Download
A 30 Day "No Questions Asked" Money Back Guarantee!
This course could change how you use ECS and Fargate in the AWS Cloud.
Learning and getting hands-on on AWS ECS helps you enhance your career opportunities and helps to boost your income. An investment in your career is an investment in yourself. Don't procrastinate. There is no time like the present to take charge of your job. Take your career to the next level by learning AWS ECS today!
Take the course now, completely risk-free!