Instalação
Copy
Ask AI
# Linux
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install terraform
terraform version
Comandos
Copy
Ask AI
terraform init # Inicializar
terraform plan # Visualizar
terraform apply # Aplicar
terraform destroy # Destruir
terraform validate # Validar
terraform fmt # Formatar
Estrutura
Copy
Ask AI
# providers.tf
provider "aws" {
region = "us-east-1"
}
# main.tf
resource "aws_instance" "web" {
ami = "ami-0c55b159cbfafe1f0"
instance_type = "t3.micro"
tags = {
Name = "web-server"
}
}
# variables.tf
variable "instance_type" {
type = string
default = "t3.micro"
}
# outputs.tf
output "instance_ip" {
value = aws_instance.web.public_ip
}
State
Copy
Ask AI
terraform {
backend "s3" {
bucket = "my-terraform-state"
key = "prod/terraform.tfstate"
region = "us-east-1"
encrypt = true
dynamodb_table = "terraform-locks"
}
}
Modules
Copy
Ask AI
module "vpc" {
source = "./modules/networking"
cidr_block = "10.0.0.0/16"
}
Workspaces
Copy
Ask AI
terraform workspace list
terraform workspace new prod
terraform workspace select prod