Segunda semana de infraestructura: Terraform, la herramienta que convierte tu infraestructura en código versionable. En este artículo vas a aprender exactamente cómo instalarlo en Ubuntu o WSL desde el repositorio oficial de HashiCorp, dejarlo con autocompletado y validar la instalación con un proyecto real.
Terraform cierra un círculo que esta serie viene dibujando: así como tus proyectos declaran su versión de lenguaje en un archivo (.node-version, .ruby-version), con Terraform tu infraestructura entera (servidores, redes, bases de datos en la nube) se declara en archivos .tf que viven en Git. La infraestructura se revisa en un PR, como cualquier código.
El problema de instalarlo mal es el de siempre: descargas manuales que nadie actualiza y binarios sueltos en el PATH. El camino correcto es el repositorio oficial de HashiCorp, y las actualizaciones llegan solas con el sistema.
Vamos a ver:
- Añadir el repositorio oficial de HashiCorp.
- Instalar Terraform y verificar.
- Activar el autocompletado en tu shell.
- Inicializar tu primer proyecto para validar todo.
Al final tendrás Terraform listo para el día en que tu proyecto toque la nube.
Esta guía asume la base de la serie: Setup Ubuntu y WSL para desarrollo profesional.
Tabla de contenidos
Tabla de contenidos
Paso 1: Añade el repositorio oficial de HashiCorp
Instala las dependencias y registra la clave GPG:
sudo apt update && sudo apt install -y curl gnupg software-properties-common
curl -fsSL https://apt.releases.hashicorp.com/gpg | \
sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
Y configura el repositorio:
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 > /dev/null
Paso 2: Instala Terraform
sudo apt update
sudo apt install -y terraform
Verifica:
terraform -version
Paso 3: Activa el autocompletado
Terraform trae su propio instalador de autocompletado para tu shell:
terraform -install-autocomplete
El comando agrega solo la línea necesaria a tu ~/.zshrc (o ~/.bashrc). Reinicia la terminal y prueba escribiendo terraform y presionando Tab: verás los subcomandos disponibles.
Paso 4: Valida con tu primer proyecto
La prueba de fuego de Terraform es inicializar un proyecto. Crea uno mínimo:
mkdir prueba-terraform && cd prueba-terraform
echo 'terraform { required_version = ">= 1.0.0" }' > main.tf
terraform init
Si ves “Terraform has been successfully initialized!”, la instalación está completa. Dos comandos más que usarás a diario:
terraform fmt
terraform validate
fmt formatea tus archivos .tf (el Prettier de la infraestructura) y validate revisa la sintaxis. Cuando termines, borra la carpeta de prueba: era solo el apretón de manos.
El flujo real de Terraform que verás en cualquier proyecto es init → plan → apply: inicializar, previsualizar los cambios y aplicarlos. Los proveedores (AWS, GCP, Azure) se declaran en el propio proyecto y init los descarga; no se instalan globalmente.
Solución de problemas comunes
terraform: command not found
El paquete no se instaló o la terminal es vieja: revisa el Paso 2 y abre una sesión nueva.
El repositorio falla al actualizar
Revisa que la clave GPG quedó en su lugar:
ls -l /usr/share/keyrings/hashicorp-archive-keyring.gpg
Si no está, repite el Paso 1.
Mantenimiento
Terraform quedó en tus fuentes de apt: se actualiza con el sistema.
sudo apt update && sudo apt upgrade
Conclusión
Terraform desde la fuente oficial, autocompletado activo y un proyecto inicializado de verdad: tu entorno ya habla infraestructura como código, listo para el día en que el proyecto toque la nube.
Si esto te fue útil, el artículo relacionado es el paso lógico: Cómo instalar y configurar Docker en Ubuntu y WSL, la otra mitad de la caja de herramientas de infraestructura.
El martes publico esta misma configuración para macOS. Si no te lo quieres perder, suscríbete al newsletter en la portada del blog.