Learn to Provision Terraform Infrastructure using Packer & Cloud-Init
Try two new hands-on tutorials to learn best practices for using Terraform to provision infrastructure with Packer or Cloud-init.
Provisioners give Terraform practitioners a way to prep their infrastructure for use by installing software and deploying applications. While there are several avenues for provisioning infrastructure deployed with Terraform, Packer and Cloud-Init give practitioners repeatability in image deployment or built-in tools. Try our new tutorials to provision infrastructure following HashiCorp’s recommended best practices.
» Image Deployment with Packer
Packer is a HashiCorp tool that builds machine images. Packer allows you to pre-build golden images to deploy using Terraform, and supports a number of provisioning processes. This tutorial will teach you how to create a Packer image with all of the common dependencies you would need for deploying a web application, and build that image in Terraform.
Provision Infrastructure with Packer
» Cloud-Init deployment
Cloud-init is a standard configuration support tool available on most Linux distributions and all major cloud providers. It allows you to provision instances with a common scripting language. You will create a Terraform instance with a cloud-init script in your resource configuration. Once you apply your Terraform configuration containing the cloud-init script, your instance will be created to your specifications and will be able to run the web application deployed within the script.
Provision Infrastructure with Cloud-init
To learn more about provisioning in Terraform, visit the full collection of tutorials on the HashiCorp Learn site.
Sign up for the latest HashiCorp news
More blog posts like this one

Scalable, secure infrastructure code the right way: Use a private module registry
How do you ensure standard security, compliance, and reliability best practices are followed across your organization when provisioning infrastructure? A private module registry is the first step.

Vault Enterprise 1.20: SCEP, usage reporting, cloud secret imports
Vault 1.20 adds smarter, streamlined security workflows with encryption updates and UX improvements. The Terraform Vault provider adds ephemeral values.

Automating workload identity for Vault and Nomad with Terraform
Learn how to use HashiCorp Vault and workload identities in your Nomad-orchestrated applications.