DevOps Deployment Automation with Terraform, AWS and Docker

10h 59m 9s
English
Paid
May 1, 2024

Welcome to the advanced course on how to set up a deployment automation that’s capable of handling millions of users! In this course you will learn some of the most in-demand skills in the marketplace today by creating automated workflows to deploy and manage a scalable and secure infrastructure.

More

The demand for DevOps engineers is skyrocketing because few people have these skills and the value they add to a business’s bottom line is so high. Software development is expensive, and DevOps saves money by automating and streamlining the process. It also makes it easier to deploy more frequently, so you can catch issues early and improve the reliability of your product or service. Not to mention it saves hundreds of hours of manually administering servers and running deployments (like the good old days).

People in DevOps roles are some of the highest earners in the industry, are looking for work the least, and are the most sought after by companies. (Source: Stack Overflow Developer Survey 2019 and Indeed).

Needless to say, mastering the technologies and skills used for DevOps is a great return on investment.

Whether you’re a developer, system administrator, or tech entrepreneur - this course will give you the tools to advance your skills in some of the most in-demand DevOps technologies in the marketplace today.

In this course, you’ll be deploying a sample Django REST API to AWS using Terraform, GitLab, Docker and a suite of AWS technologies, including:

  • Elastic Container Registry (ECR)

  • Relational Database Service (RDS)

  • Elastic Container Service (ECS)

  • Application Load Balancer (ALB)

  • Elastic Cloud Compute (EC2)

  • Virtual Private Cloud (VPC)

  • Subnets

  • Gateways

  • Simple Storage Service (S3)

  • Route53

  • Identity and Access Management (IAM)

  • and AWS Certificate Manager (ACM)

Watch Online DevOps Deployment Automation with Terraform, AWS and Docker

Join premium to watch
Go to premium
# Title Duration
1 Course requirements 02:02
2 What is DevOps Automation? 03:48
3 Technologies 06:32
4 Architecture overview 03:04
5 Recipe Application 01:08
6 AWS cost estimation 05:26
7 Disclaimer 02:17
8 How to get help 04:28
9 Install and test dependencies 06:00
10 Setup GitLab Account and SSH Authentication 04:03
11 Introduction to AWS setup 01:36
12 Setup AWS Account 03:02
13 Give IAM users access to billing information 01:27
14 Setup AWS IAM account 09:29
15 Set MFA on IAM account 05:37
16 Setup AWS-vault 08:59
17 Create budget in AWS 04:51
18 Introduction to NGINX proxy 03:26
19 Create project for NGINX proxy 00:57
20 Configure NGINX proxy GitLab project 08:32
21 Setup AWS for NGINX proxy 07:29
22 Set repository variables 04:58
23 Create NGINX config files 11:20
24 Create NGINX Dockerfile 12:41
25 Setup GitLab CI/CD pipeline build job 08:06
26 Setup GitLab CI/CD pipeline push jobs 14:25
27 Test proxy pipeline 13:10
28 Introduction to preparing project for deployment 01:58
29 Create new project on GitLab 02:44
30 Configure GitLab project 00:59
31 Add uWSGI server to project 08:50
32 Update Dockerfile to run entrypoint 08:11
33 Configure static and media files in app settings 02:52
34 Setup environment variable configuration 08:17
35 Test proxy deployment locally 09:46
36 Introduction to setting up Terraform 01:48
37 Get AWS ready for Terraform 06:49
38 Configure Terraform 10:36
39 Setup Docker Compose for running Terraform 06:40
40 Initialize Terraform 06:22
41 Create bastion EC2 instance 22:08
42 Create Terraform workspace 02:43
43 Create resource prefix 10:34
44 Add tags 09:51
45 Introduction to setting up GitLab CI-CD 03:39
46 Create skeleton CI/CD config 21:21
47 Test workflow 10:54
48 Add automated code checks 05:44
49 Setup Terraform linting 15:43
50 Create CI user in AWS 13:10
51 Add build job 08:45
52 Add Terraform plan jobs 06:52
53 Add Terraform apply jobs 04:33
54 Add Terraform destroy jobs 03:11
55 Test full workflow 08:29
56 Network overview 02:06
57 Create VPC 06:41
58 Create public subnets 16:51
59 Create private subnets 16:29
60 Introduction to database 00:51
61 Update CI user policy 03:31
62 Add RDS instance 17:45
63 Set CI variables for database 08:03
64 Introduction to updating bastion 01:30
65 Update CI user and add SSH key 04:30
66 Create user data script 05:30
67 Create bastion instance profile 07:28
68 Update bastion subnet and SSH key 03:45
69 Add security group 10:16
70 Add output for bastion address 05:06
71 Introduction to ECS 02:19
72 Add permissions to CI user 02:03
73 Create cluster 02:40
74 Create task role 09:50
75 Create log group 01:34
76 Create container definition template 09:29
77 Create task definition 16:13
78 Create and deploy service 10:04
79 Inspect ECS task logs 04:21
80 Introduction to using bastion 00:36
81 Create an API superuser 08:10
82 Test ECS service 01:57
83 Introduction to creating load balancer 01:18
84 Add permissions to CI IAM policy 01:44
85 Add load balancer 14:49
86 Update ALLOWED_HOSTS setting and test 06:48
87 Overview of media uploads 01:16
88 Add S3 permissions to CI IAM policy 01:10
89 Create S3 bucket for images 06:39
90 Give ECS task permissions for S3 06:14
91 Update app to use S3 backend for images 12:21
92 Overview of DNS 01:04
93 Register domain 01:42
94 Add IAM permissions for CI user 01:50
95 Add DNS to Terraform 19:28
96 Update load balancer and ECS to use new domain 12:32
97 Test final app 07:13
98 Thank you! 01:01

Similar courses to DevOps Deployment Automation with Terraform, AWS and Docker

Ultimate AWS Certified Developer Associate 2021 - NEW!

Ultimate AWS Certified Developer Associate 2021 - NEW!udemy

Duration 32 hours 21 minutes 11 seconds
Python 3: Deep Dive (Part 2 - Iteration, Generators)

Python 3: Deep Dive (Part 2 - Iteration, Generators)udemy

Duration 34 hours 42 minutes 47 seconds