Hashicorp Terraform: The Ultimate Beginner'S Guide With Labs
Published 3/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 5.64 GB | Duration: 9h 54m
Published 3/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 5.64 GB | Duration: 9h 54m
Learn Terraform and OpenTofu - Build, Automate, and Scale Infrastructure with Hands-On Labs for AWS, Azure, and GitHub
What you'll learn
Students will learn installation, provider setup, and CLI commands to manage Terraform configurations
Build by a HASHICORP AMBASSADOR and PRINCIPAL CONSULTANT with over 10 years experience working with HashiCorp products.
Students will be introduced to IaC principles and understand how to define and manage infrastructure with Terraform.
Learn how to build reusable code and refactor existing code using locals and DRY practices.
Students will learn from a HASHICORP AUTHORIZED INSTRUCTOR and EXAM CONTRIBUTOR.
Scale and Build infrastructure using Terraform to automate workflows with a focus on repeatability.
Requirements
Basic computer and command line skills and familiarity with a text editor or IDE
A general understanding of IT infrastructure concepts and cloud providers.
No prior Terraform or IaC experience required - I'll teach ALL in this course!
Access to an AWS, Azure, or GitHub account to go through the included hands-on labs in the course.
Description
Unlock the power of Terraform and OpenTofu to automate, manage, and scale AWS, Azure, and GitHub resources like a pro! This course provides actionable, hands-on experience in Infrastructure as Code (IaC) using HCL—the language that powers Terraform. By the end of this course, you'll confidently create reusable, modular infrastructure with Terraform and OpenTofu, building your skills through practical labs and real-world demos that mirror on-the-job challenges. If you're looking for a comprehensive, expertly taught course to jumpstart your IaC journey, this is it!This course includes access to hands-on labs to gain experience as you go through the course. Each lab is offered on three different platforms - AWS, Azure, and GitHub - so you can choose your own path based on your skillset and comfortability.This course includes tons of information, including:Introduction to Terraform and OpenTofu - Overview of tools, benefits of IaC, and course objectivesSetting Up Your Environment - Installing Terraform and OpenTofu, configuring AWS and other providersUnderstanding HCL (HashiCorp Configuration Language) - Syntax, structure, and key concepts for writing IaCCore Terraform Concepts - Providers, resources, data sources, variables, and outputsState Management - Understanding Terraform state, backends, and state management best practicesCreating Reusable Infrastructure with Modules - Building and using reusable modules for scalable codeProvisioners and Dependencies - Configuring resources using provisionersReal-World Demos and Hands-On Labs - Exercises that simulate real-world infrastructure challenges and solutions.**What is Terraform?**Terraform is an open-source tool by HashiCorp that enables you to define and provision infrastructure as code (IaC) across a wide range of cloud providers, including AWS, Azure, and Google Cloud. Using its declarative language, HCL (HashiCorp Configuration Language), Terraform allows you to create, modify, and version infrastructure safely and efficiently. By automating the setup and management of cloud resources, Terraform helps teams scale and manage complex environments, reduce manual work, and ensure consistency across deployments. It’s a powerful solution for anyone looking to streamline cloud infrastructure management and embrace the principles of IaC.**About the Instructor**With over 7 years of HashiCorp consulting, deep involvement in the HashiCorp community, and contributions to the official Terraform certification exams, I bring unmatched industry expertise to guide you every step of the way. I've been teaching HashiCorp solutions for over 5 years and have an instructor rating of 4.7 with 150,000+ enrollments around the world.
Overview
Section 1: Introduction
Lecture 1 Course Introduction
Lecture 2 Udemy Course Ratings & Reviews
Lecture 3 Introduction to Terraform
Lecture 4 Core Components and Benefits of Terraform
Lecture 5 Learn the Basics of HashiCorp Configuration Language (HCL)
Lecture 6 Introduction to OpenTofu
Lecture 7 How to Use OpenTofu in This Course
Section 2: Preparing Your Environment
Lecture 8 Section Intro - Preparing Your Environment
Lecture 9 Installing Terraform on MacOS and Linux
Lecture 10 Installing Terraform on Windows
Lecture 11 Installing Terraform Auto-Complete
Lecture 12 Installing OpenTofu on Your Local Machine
Lecture 13 Installing Microsoft Visual Studio Code (IDE)
Lecture 14 Setting Up Credentials for Terraform and OpenTofu – AWS
Lecture 15 Setting Up Credentials for Terraform and OpenTofu – Azure
Lecture 16 Setting Up Credentials for Terraform and OpenTofu – GitHub
Section 3: Terraform File Structure and Organization
Lecture 17 Terraform File Structure and Organization
Section 4: Understanding Terraform State
Lecture 18 Section Intro - Terraform State
Lecture 19 Introduction to Terraform State
Lecture 20 Where Can I Store Terraform State?
Section 5: Terraform Workflow
Lecture 21 Section Intro - Terraform Workflow
Lecture 22 Terraform Init
Lecture 23 Terraform Plan
Lecture 24 Terraform Apply
Lecture 25 Terraform Destroy
Section 6: Terraform CLI
Lecture 26 Section Intro - Terraform CLI
Lecture 27 Introduction to the Terraform CLI
Lecture 28 Demo - Terraform CLI
Lecture 29 Making the Most of the Terraform CLI
Lecture 30 Demo - Making the Most of the Terraform CLI
Section 7: Terraform Block Types
Lecture 31 Section Intro - Terraform Block Types
Lecture 32 Introduction to Terraform Block Types
Lecture 33 Provider Block
Lecture 34 Resource Block
Lecture 35 Data Block
Lecture 36 Variable Block
Lecture 37 Variable Block - Types of Variables
Lecture 38 Variable Block - Assigning Values to Variables
Lecture 39 Output Block
Lecture 40 Terraform Block
Lecture 41 Module Block
Lecture 42 Import Block
Section 8: Writing Your First Terraform Configurations
Lecture 43 Section Intro - Writing Your First Terraform Configurations
Lecture 44 Hands-On Lab # 1 - Getting Started with Terraform Configuration
Lecture 45 Hands-On Lab # 2 - Creating Your First Resource with Terraform
Lecture 46 Hands-On Lab # 3 - Working with Variables and Outputs
Lecture 47 Hands-On Lab # 4 - Managing Multiple Resources and Dependencies
Lecture 48 Hands-On Lab # 5 - Working with State, Data Sources, and CLI Commands
Section 9: Using Terraform Documentation
Lecture 49 Learn How to Use Terraform Documentation
Section 10: Making Code Reusable
Lecture 50 Section Intro - Making Code Reusable
Lecture 51 The "Why" Behind Reusability
Lecture 52 Enhancing Code with Dynamic Values
Lecture 53 Demo - Enhancing Code with Dynamic Values
Lecture 54 Hands-On Lab # 6 - Refactor Code with Dynamic Values
Lecture 55 Using Locals to Avoid Code Duplication
Lecture 56 Demo - Using Locals to Avoid Code Duplication
Lecture 57 Hands-On Lab # 7 - Using Locals for Repeated Values
Lecture 58 Meta-Arguments - Write Less Code, Deploy More Efficiently
Lecture 59 Using the count Meta-Argument
Lecture 60 Demo - Using the count Meta-Argument
Lecture 61 Hands-On Lab # 8 - Deploying Multiple Resources with count
Lecture 62 Using the for_each Meta-Argument
Lecture 63 Demo - Using the for_each Meta-Argument
Lecture 64 Hands-On Lab # 9 - Deploying Multiple Resources with for_each
Lecture 65 Using the depends_on Meta-Argument
Lecture 66 Demo - Using the depends_on Meta-Argument
Lecture 67 Hands-On Lab # 10 - Managing Explicit Dependencies
Lecture 68 Using the provider Meta-Argument
Lecture 69 Demo - Using the provider Meta-Argument
Lecture 70 Hands-On Lab # 11 - Deploying to Multiple Regions
Lecture 71 Using the lifecycle Meta-Argument
Lecture 72 Demo - Using the lifecycle Meta-Argument
Lecture 73 Hands-On Lab # 12 - Managing the Lifecycle of Resources
Lecture 74 Using Built-In Functions to Standardize Code
Lecture 75 Hands-On Lab # 13 - Using Built-In Functions to Standardize Code
Section 11: Introduction to Modules
Lecture 76 Section Intro - Modules
Lecture 77 Introduction to Modules
Lecture 78 Using the Terraform Registry
Lecture 79 Hands-On Lab #14 - Using Modules from the Terraform Registry
Lecture 80 Writing and Using Your Own Modules
Lecture 81 Hands-On Lab #15 - Write Your Own Terraform Module
Section 12: Managing and Maintaining Your Terraform Code
Lecture 82 Section Intro - Managing and Maintaining Your Code
Lecture 83 More Coming Soon!
Section 13: BONUS
Lecture 84 Course Discounts and Links
This course is designed for IT professionals, developers, and cloud enthusiasts who are new to Terraform and Infrastructure as Code,Developers eager to incorporate code-driven cloud deployments using Terraform or OpenTofu into their workflows.,Beginners to Infrastructure as Code who want to build a solid Terraform foundation.,DevOps engineers seeking to expand their skill set with Terraform.