Booking options
£101.99
£101.99
On-Demand course
10 hours 5 minutes
All levels
With this hands-on video course, you'll gain a solid understanding of AWS, DevOps, and deployments at scale using ECS with the help of examples and activities. Throughout the course, you'll get to grips with a wide variety of AWS services.
The rising popularity of AWS and DevOps is testimony to the fact that companies are able to build and deploy products speedily and reliably using AWS and DevOps practices. This course is packed with?hands-on and practical labs which will help you to build real-world projects.
The course begins with an introduction to DevOps and AWS. You'll then sign up for an AWS account, create Identity and Access Management (IAM) users, and discover how Elastic Cloud Compute (EC2) instances work. Going further, you'll find out how application load balancers and Auto Scaling groups help in scaling EC2 instances and explore AWS storage devices. As you advance, you'll create an Amazon virtual private cloud (VPC) and get an overview of Docker and containerization. You'll also work with Docker Compose and upload Docker images to Amazon Elastic Container Registry (ECR). Moving ahead, you'll delve into Amazon Elastic Container Service (ECS), continuous integration (CI), continuous delivery (CD), and continuous deployment. Finally, you'll work on a project to set up, configure, containerize, and deploy a Laravel PHP application.
By the end of this course, you'll have gathered the skills needed to deploy containers to production using ECR and ECS.
The resources for this course are available at https://github.com/PacktPublishing/Complete-2020-AWS-DevOps-Bootcamp-for-Beginners-with-ECS
Auto-scale EC2 instances based on Auto Scaling groups
Work with?S3?and Elastic File System (EFS) to store?static websites
Upload images to the AWS ECR repository
Implement networking in AWS using subnets, routes, and internet getaway
Provision and scale?Fargate, EC2, and ECS clusters
Deploy?your application from the computer via Git using CodeCommit
If you are a web developer or AWS beginner looking to run containers locally and in production using AWS ECS/ECR, then this course is for you. No prior knowledge of AWS is required; however, basic web development and PHP skills are necessary.
Using detailed explanations, exercises, activities, and code labs, this video course will help you get up and running with AWS and DevOps services.
Get to grips with the fundamentals of DevOps and AWS * Discover how to run an ECS cluster in a production-hosting environment * Deploy a real-world Laravel PHP application with the help of an end-to-end workflow
https://github.com/packtpublishing/complete-2020-aws-devops-bootcamp-for-beginners-with-ecs
Thomas is a seasoned professional with 20+ years of development experience in programming languages and systems. He holds a master's in computer science and has been actively involved in Blockchain technology since 2016. Thomas is a prolific author who created eight best-selling Blockchain developer courses and is a pivotal contributor to the industry-standard Certified Blockchain Developer Ethereum (CBDE) certification program. He consults Fortune 500 companies in Blockchain technologies and is a product manager for a financial forecasting SaaS company. Thomas is passionate about practical development and engages with the community through LinkedIn, his blog, and YouTube. His expertise empowers professionals in their Blockchain endeavors.
1. Introduction
1. Introduction Introduction: Introduction |
2. Get to Know Your Instructor Introduction: Get to know your instructor |
3. What You Should Bring to the Course Introduction: What you should bring to the course |
4. Housekeeping Introduction: Housekeeping |
5. Free Tier and Pricing in AWS Introduction: Free tier and pricing in AWS |
2. DevOps and AWS Fundamentals
1. This is the DevOps Definition DevOps and AWS fundamentals: This is the DevOps definition |
2. The Different Types of Cloud Computing, Explained DevOps and AWS fundamentals: The different types of cloud computing, explained |
3. How to Talk to Management About Cloud Computing DevOps and AWS fundamentals: How to talk to management about cloud computing |
4. Lab: Signup to AWS DevOps and AWS fundamentals: Lab: Signup to AWS |
5. AWS Regions and Availability Zones DevOps and AWS fundamentals: AWS regions and availability zones |
6. The Difference Between AWS Services and a Monolithic Web-Service DevOps and AWS fundamentals: The difference between AWS services and a monolithic web-service |
7. Lab: Create Your First EC2 Instance DevOps and AWS fundamentals: Lab: Create your first EC2 instance |
8. Lab Recap: Create Your First EC2 Instance DevOps and AWS fundamentals: Lab Recap: Create your first EC2 instance |
3. Security, Identity, and Access Management (IAM) on AWS
1. Security on AWS Primer - IAM and Your Root User Security, identity, and access management (IAM) on AWS: Security on AWS primer - IAM and your root user |
2. Lab: Create an IAM User Security, identity, and access management (IAM) on AWS: Lab: Create an IAM user |
3. This is IAM: The Identity and Access Management in AWS Security, identity, and access management (IAM) on AWS: This is IAM: The identity and access management in AWS |
4. Lab: Download and Configure AWS CLI Security, identity, and access management (IAM) on AWS: Lab: Download and configure AWS CLI |
4. Elasticity in AWS - Understanding the Elastic Compute Cloud (EC2)
1. EC2 Instance - Deep Dive Elasticity in AWS - understanding the elastic compute cloud (EC2): EC2 instance - deep dive |
2. Lab: Start an EC2 Instance with User Data Elasticity in AWS - understanding the elastic compute cloud (EC2): Lab: Start an EC2 instance with user data |
3. Lab Recap: Start an EC2 Instance with User Data Elasticity in AWS - understanding the elastic compute cloud (EC2): Lab Recap: Start an EC2 instance with user data |
4. Understanding User Data - Deep Dive Elasticity in AWS - understanding the elastic compute cloud (EC2): Understanding user data - deep dive |
5. Understanding Metadata in AWS for EC2 Instances Elasticity in AWS - understanding the elastic compute cloud (EC2): Understanding metadata in AWS for EC2 instances |
6. Lab: Run EC2 Instances and Query Metadata Elasticity in AWS - understanding the elastic compute cloud (EC2): Lab: Run EC2 instances and query metadata |
7. Lab Recap: Run EC2 Instances and Query Metadata Elasticity in AWS - understanding the elastic compute cloud (EC2): Lab Recap: Run EC2 instances and query metadata |
5. Scalability in AWS - Understanding Scaling of Elastic Compute Cloud Resources
1. An Introduction and Overview of Scalability Objectives Scalability in AWS - understanding scaling of Elastic compute cloud resources: An introduction and overview of scalability objectives |
2. Lab: Create an Auto-Scaling Group with Load Balancing for EC2 Instances Scalability in AWS - understanding scaling of Elastic compute cloud resources: Lab: Create an auto-scaling group with load balancing for EC2 instances |
3. Lab Recap: Creating an Auto-Scaling Group with Load Balancing Scalability in AWS - understanding scaling of Elastic compute cloud resources: Lab Recap: Creating an auto-scaling group with load balancing |
4. Auto-Scaling Group with EC2 Instances Scalability in AWS - understanding scaling of Elastic compute cloud resources: Auto-scaling group with EC2 instances |
5. Understanding Launch Templates for EC2 Instances Scalability in AWS - understanding scaling of Elastic compute cloud resources: Understanding launch templates for EC2 instances |
6. Load Balancing Introduction and Elastic Load Balancing Overview Scalability in AWS - understanding scaling of Elastic compute cloud resources: Load balancing introduction and Elastic load balancing overview |
7. Classic Load Balancer versus Application Load Balancer versus Network Load Balancer Scalability in AWS - understanding scaling of Elastic compute cloud resources: Classic load balancer versus application load balancer versus network load balancer |
6. Storage in AWS - A Deep Dive for Web Developers
1. Why Cloud Storage? Storage in AWS - a deep dive for web developers: Why cloud storage? |
2. Understanding S3 - The AWS Simple Storage Service Storage in AWS - a deep dive for web developers: Understanding S3 - The AWS simple storage service |
3. Lab: Create an S3 Encrypted Versioned Bucket to Host a Public Website Storage in AWS - a deep dive for web developers: Lab: Create an S3 encrypted versioned bucket to host a public website |
4. Understanding AWS S3 Bucket Policies Storage in AWS - a deep dive for web developers: Understanding AWS S3 bucket policies |
5. Lab: Interacting with S3 via CLI with IAM Permissions and Deleting the Bucket Storage in AWS - a deep dive for web developers: Lab: Interacting with S3 via CLI with IAM permissions and deleting the bucket |
6. Lab Recap and S3 Pricing Storage in AWS - a deep dive for web developers: Lab recap and S3 pricing |
7. AWS EBS: Elastic Block Storage Overview Storage in AWS - a deep dive for web developers: AWS EBS: Elastic block storage overview |
8. AWS EFS: Elastic File Storage Overview Storage in AWS - a deep dive for web developers: AWS EFS: Elastic file storage overview |
9. Lab: Creating and Interacting with EFS Volumes from Different EC2 Instances Storage in AWS - a deep dive for web developers: Lab: Creating and interacting with EFS volumes from different EC2 instances |
10. EFS Summary Storage in AWS - a deep dive for web developers: EFS summary |
7. Networking in AWS
1. AWS Networking Introduction Networking in AWS: AWS networking introduction |
2. CIDR Explanation: Understanding Classless Inter-Domain Routing Networking in AWS: CIDR Explanation: Understanding classless inter-domain routing |
3. Virtual Private Cloud - Understanding VPC in AWS Networking in AWS: Virtual Private Cloud - Understanding VPC in AWS |
4. Lab: Create Your Own VPC Networking in AWS: Lab: Create your own VPC |
5. VPC Subnet Explanation: Understanding Subnet AZ Placement Networking in AWS: VPC Subnet Explanation: Understanding subnet AZ placement |
6. Lab: Create Subnets for Your Own VPC Networking in AWS: Lab: Create subnets for your own VPC |
7. AWS Route Table and Internet Gateway Deep Dive Networking in AWS: AWS route table and internet gateway deep dive |
8. Lab: Create an Internet Gateway and a NAT Gateway Networking in AWS: Lab: Create an internet gateway and a NAT gateway |
9. Understanding NAT Gateways and Egress Only Internet Gateways Networking in AWS: Understanding NAT gateways and egress only internet gateways |
10. Lab: Create and add a NAT gateway Networking in AWS: Lab: Create and add a NAT gateway |
11. Understanding the Idea of Bastion Hosts in AWS VPCs Networking in AWS: Understanding the idea of bastion hosts in AWS VPCs |
12. Lab: Creating a Bastion Host to Connect to Private EC2 Instances Networking in AWS: Lab: Creating a bastion host to connect to private EC2 instances |
13. AWS Security Group Deep Dive Networking in AWS: AWS security group deep dive |
14. Lab: Creating a Load Balancer and a Private EC2 Instance in a Private Subnet Networking in AWS: Lab: Creating a load balancer and a private EC2 instance in a private subnet |
8. Working in Teams - Code Repositories
1. Why Git? Working in teams - code repositories: Why Git? |
2. Lab: Creating Your CodeCommit Repository Working in teams - code repositories: Lab: Creating your CodeCommit repository |
3. Lab Recap: Creating Your CodeCommit Repository Working in teams - code repositories: Lab Recap: Creating your CodeCommit repository |
4. Lab: Start an EC2 Instance and Automatically Use Code from CodeCommit via IAM Working in teams - code repositories: Lab: Start an EC2 instance and automatically use code from CodeCommit via IAM |
5. Lab Recap: EC2 Instance and CodeCommit Working in teams - code repositories: Lab Recap: EC2 instance and CodeCommit |
9. Containerization - Why Use Docker for Your Development?
1. Container Introduction Containerization - why use Docker for your development?: Container Introduction |
2. Images versus Containers Containerization - why use Docker for your development?: Images versus containers |
3. Lab: Starting a PHP Docker Container Containerization - why use Docker for your development?: Lab: Starting a PHP Docker container |
4. Lab Recap: PHP Docker Container Containerization - why use Docker for your development?: Lab recap: PHP Docker container |
5. This is a Dockerfile - An In-Depth Crash Course Containerization - why use Docker for your development?: This is a Dockerfile - an in-depth crash course |
6. Lab: Uploading a Docker Image to ECR, the Elastic Container Registry Containerization - why use Docker for your development?: Lab: Uploading a Docker image to ECR, the Elastic container registry |
7. Lab Recap: Uploading an Image to ECR Containerization - why use Docker for your development?: Lab Recap: Uploading an image to ECR |
8. Lab: Understanding and Creating Environments Using Docker-Compose Containerization - why use Docker for your development?: Lab: Understanding and creating environments using Docker-compose |
9. Lab Recap: Understanding Docker-Compose Containerization - why use Docker for your development?: Lab Recap: Understanding Docker-compose |
10. Elastic Container Service - Creating and Running Containers
1. ECS Introduction Elastic container service - creating and running containers: ECS Introduction |
2. Task Definition Introduction Elastic container service - creating and running containers: Task definition introduction |
3. Introduction to Fargate Elastic container service - creating and running containers: Introduction to Fargate |
4. Lab: Creating a TaskDefinition and Start a Fargate Cluster Elastic container service - creating and running containers: Lab: Creating a TaskDefinition and start a Fargate cluster |
5. Lab Recap: Creating a Task Definition and Start a Fargate Cluster Elastic container service - creating and running containers: Lab Recap: Creating a task definition and start a Fargate cluster |
6. Permissions in ECS Elastic container service - creating and running containers: Permissions in ECS |
7. Lab: Creating an S3 Bucket from Within Containers with IAM Policies Attached Elastic container service - creating and running containers: Lab: Creating an S3 bucket from within containers with IAM policies attached |
8. Lab Recap: Creating an S3 Bucket from Within Containers with IAM Policies Attached Elastic container service - creating and running containers: Lab Recap: Creating an S3 bucket from within containers with IAM policies attached |
9. How Storage and Scaling Works on AWS Fargate Elastic container service - creating and running containers: How storage and scaling works on AWS Fargate |
10. Lab: Scaling a Fargate Service with an Application Load Balancer Elastic container service - creating and running containers: Lab: Scaling a Fargate service with an application load balancer |
11. Lab Recap: Scaling a Fargate Service with an Application Load Balancer Elastic container service - creating and running containers: Lab Recap: Scaling a Fargate service with an application load balancer |
12. EC2 Launch Type Overview Elastic container service - creating and running containers: EC2 launch type overview |
13. ECS EC2 Network Modes Elastic container service - creating and running containers: ECS EC2 network modes |
14. EC2 Lab Introduction Elastic container service - creating and running containers: EC2 lab introduction |
15. Lab: Creating an ECS EC2 Cluster with a Load Balancer Elastic container service - creating and running containers: Lab: Creating an ECS EC2 cluster with a load balancer |
16. Lab Recap: Creating an ECS EC2 Cluster with a Load Balancer Elastic container service - creating and running containers: Lab Recap: Creating an ECS EC2 cluster with a load balancer |
17. Understanding Deployment Types on ECS Elastic container service - creating and running containers: Understanding deployment types on ECS |
18. Understanding Task Placement Strategies in ECS Elastic container service - creating and running containers: Understanding task placement strategies in ECS |
19. ECS EC2 Capacity Providers Elastic container service - creating and running containers: ECS EC2 capacity providers |
20. Lab: Creating an EC2 Cluster with Capacity Providers for Instance Auto-Scaling Elastic container service - creating and running containers: Lab: Creating an EC2 cluster with capacity providers for instance auto-scaling |
21. Lab Recap: Creating an EC2 Cluster with Capacity Providers for Instance Auto-Scaling Elastic container service - creating and running containers: Lab Recap: Creating an EC2 cluster with capacity providers for instance auto-scaling |
11. Continuous Integration, Continuous Delivery, and Continuous Deployment
1. Introduction to Continuous Deployment Continuous Integration, Continuous Delivery, and Continuous Deployment: Introduction to continuous deployment |
2. Continuous Integration versus Continuous Delivers versus Continuous Deployment Continuous integration, continuous delivery, and continuous deployment: Continuous integration versus continuous delivers versus continuous deployment |
3. AWS CodePipeline Introduction and Overview Continuous integration, continuous delivery, and continuous deployment: AWS CodePipeline introduction and overview |
4. AWS CodeBuild Introduction and Overview Continuous integration, continuous delivery, and continuous deployment: AWS CodeBuild introduction and overview |
5. The CodeBuild Buildspec.yml File, Explained Continuous integration, continuous delivery, and continuous deployment: The CodeBuild Buildspec.yml file, explained |
6. Lab: Creating Your First AWS CodeBuild Project to Create Docker Images Continuous integration, continuous delivery, and continuous deployment: Lab: Creating your first AWS CodeBuild project to create Docker images |
7. AWS CodeDeploy Introduction and Overview Continuous integration, continuous delivery, and continuous deployment: AWS CodeDeploy introduction and overview |
8. Lab: Creating a Continuous Deployment Pipeline Continuous integration, continuous delivery, and continuous deployment: Lab: Creating a continuous deployment pipeline |
9. Lab: Creating a Continuous Deployment Pipeline Using AWS CodePipeline to ECR Continuous integration, continuous delivery, and continuous deployment: Lab: Creating a continuous deployment pipeline using AWS CodePipeline to ECR |
10. Lab Recap: Creating a Continuous Deployment Pipeline Using AWS CodePipeline to ECR Continuous integration, continuous delivery, and continuous deployment: Lab Recap: Creating a continuous deployment pipeline using AWS CodePipeline to ECR |
12. AWS Services - RDS, ElastiCache, SSM Parameter Store, Route53
1. Introduction AWS services - RDS, ElastiCache, SSM parameter store, Route53: Introduction |
2. AWS RDS and Aurora AWS services - RDS, ElastiCache, SSM parameter store, Route53: AWS RDS and Aurora |
3. Lab: Creating an RDS Instance and Attaching It to ECS Container via Environmental Var AWS services - RDS, ElastiCache, SSM parameter store, Route53: Lab: Creating an RDS instance and attaching it to ECS container via environmental var |
4. Lab Recap: Creating an RDS Instance AWS services - RDS, ElastiCache, SSM parameter store, Route53: Lab Recap: Creating an RDS instance |
5. AWS Systems Manager Parameter Store and AWS Secrets Manager AWS services - RDS, ElastiCache, SSM parameter store, Route53: AWS systems manager parameter store and AWS secrets manager |
6. Lab: Storing and Retrieving Values from The SSM Parameter Store to ECS Services AWS services - RDS, ElastiCache, SSM parameter store, Route53: Lab: Storing and retrieving values from the SSM parameter store to ECS services |
7. Lab Recap: Storing and Retrieving Values AWS services - RDS, ElastiCache, SSM parameter store, Route53: Lab Recap: Storing and retrieving values |
8. Route53 and AWS Certificate Manager Overview AWS services - RDS, ElastiCache, SSM parameter store, Route53: Route53 and AWS certificate manager overview |
9. Lab: Adding a Custom Domain to Route53 and SSL Termination with ACM AWS services - RDS, ElastiCache, SSM parameter store, Route53: Lab: Adding a custom domain to Route53 and SSL termination with ACM |
10. Lab Recap: Adding a Custom Domain to Route53 and SSL Termination with ACM AWS services - RDS, ElastiCache, SSM parameter store, Route53: Lab Recap: Adding a custom domain to Route53 and SSL termination with ACM |
11. AWS CloudFormation Overview and Introduction AWS services - RDS, ElastiCache, SSM parameter store, Route53: AWS CloudFormation overview and introduction |
12. Lab: Creating a VPC With a CloudFormation Template AWS services - RDS, ElastiCache, SSM parameter store, Route53: Lab: Creating a VPC with a CloudFormation template |
13. AWS ElastiCache Overview AWS services - RDS, ElastiCache, SSM parameter store, Route53: AWS ElastiCache overview |
13. Project - Deploying a Laravel Application into an HA ECS EC2 Cluster
1. Project Introduction and Overview Project - deploying a Laravel application into an HA ECS EC2 cluster: Project Introduction and Overview |
2. Installing Laravel Using Docker and the Composer Image Project - deploying a Laravel application into an HA ECS EC2 cluster: Installing Laravel using Docker and the composer image |
3. Laravel Local Development Environment using Docker-Compose Project - deploying a Laravel application into an HA ECS EC2 cluster: Laravel local development environment using Docker-compose |
4. Adding MySQL and Redis into the Local Development Environment Project - deploying a Laravel application into an HA ECS EC2 cluster: Adding MySQL and Redis into the local development environment |
5. Adding a Register/Login Functionality Project - deploying a Laravel application into an HA ECS EC2 cluster: Adding a register/login functionality |
6. Initializing a New Git Repository Project - deploying a Laravel application into an HA ECS EC2 cluster: Initializing a new Git repository |
7. Adding the Laravel PHP-FPM and Nginx Docker Images to ECR Project - deploying a Laravel application into an HA ECS EC2 cluster: Adding the Laravel PHP-FPM and nginx Docker images to ECR |
8. Creating an ECS EC2 Launch Type Cluster with a Capacity Provider Project - deploying a Laravel application into an HA ECS EC2 cluster: Creating an ECS EC2 launch type cluster with a capacity provider |
9. Creating and Launching our Laravel Service into the ECS Cluster Project - deploying a Laravel application into an HA ECS EC2 cluster: Creating and launching our Laravel service into the ECS cluster |
10. Adding and Attaching an RDS Database via SSM Parameter Store Project - deploying a Laravel application into an HA ECS EC2 cluster: Adding and attaching an RDS database via SSM parameter store |
11. Uploading Newer Images for the Laravel PHP-FPM Service and Nginx to Allow Logins Project - deploying a Laravel application into an HA ECS EC2 cluster: Uploading newer images for the Laravel PHP-FPM service and nginx to allow logins |
12. Establishing Automatic Database Migrations Project - deploying a Laravel application into an HA ECS EC2 cluster: Establishing automatic database migrations |
13. Adding Redis Through ElastiCache for Session Storage Project - deploying a Laravel application into an HA ECS EC2 cluster: Adding Redis through ElastiCache for session storage |
14. Route53 Custom Domain Alias with SSL Termination and HTTP to HTTPS Redirect Project - deploying a Laravel application into an HA ECS EC2 cluster: Route53 custom domain alias with SSL termination and HTTP to HTTPS redirect |
15. Establishing a full CI/CD Pipeline Project - deploying a Laravel application into an HA ECS EC2 cluster: Establishing a full CI/CD pipeline |