New Guides for Terraform Modules

Over the last few years, one of the most popular topics on our YouTube channel, in person at conferences, and in other discussions has been writing, using, refactoring, and collaborating on complex configurations using Terraform modules. Modules are a key part of writing maintainable, shareable Terraform configurations.

Use and create your first Terraform modules by following our new step-by-step command-line guides in the Learn modules track.

Diagram of Terraform modules

HashiCorp recommends using modules for almost any Terraform configuration. Modules allow you to organize, encapsulate, and re-use your configuration. Organizations can use modules to ensure consistent use of security features and other best practices.

»Understanding Modules

If you’re unfamiliar with Terraform modules, review the Modules Overview to learn what modules are, and when and why to use them.

»Using Modules

The Terraform Registry hosts hundreds of modules contributed by the Terraform community. Modules from the Registry and other locations can be used to enhance your Terraform configurations.

In this guide, you will use modules from the Terraform Registry to provision an example environment on AWS.

Use Terraform Modules

»Creating Modules

As your Terraform configurations become more complex, modules can be used to organize and simplify them. You can also share modules within your organization or with the Terraform community.

In this guide, you will create a module to manage AWS S3 buckets used to host static websites.

Create a Terraform Module

Sign up for the latest HashiCorp news