Documentación
Estructura del Repositorio
Inicio Rápido
1. Instale las Herramientas Requeridas
Terraform2. Cree un Nuevo Entorno
Los nuevos entornos se crean copiandoenv-template-folder y completando los placeholders.
Consulte la Guía de Despliegue con Terragrunt para el proceso completo paso a paso. El flujo de alto nivel es:
Banderas de Habilitación/Deshabilitación de Servicios
Todos los servicios opcionales se activan a través de variables de entorno. Establézcalas antes de ejecutarterragrunt apply.
Orden de Despliegue de Supabase AutoalojadoLos componentes de Supabase deben desplegarse en secuencia:
Referencia de Charts Helm
Referencia de Módulos
modules/eks
El módulo principal. Provisiona:
- VPC con subredes públicas/privadas en 3 AZs
- Cluster EKS (Kubernetes 1.33) y grupo de nodos administrado para Karpenter
- Controlador Karpenter + NodePool + EC2NodeClass
- Roles IAM (cluster, grupo de nodos, Karpenter, controlador ALB, controlador EBS CSI)
- Todos los releases de Helm a través del mapa de entrada
helm_releases
modules/aws-services
Provisiona ElastiCache Redis y Amazon MQ RabbitMQ. Solo activo cuando ENABLE_AWS_SERVICES=true.
modules/state
Inicializa el bucket de estado S3 para un nuevo entorno (versionado, cifrado, bloqueo de acceso público).
modules/helm
Módulo de release Helm reutilizable que soporta repositorios de charts upstream y charts locales con chart_path.
Configuración del Entorno
Placeholders
Cada valor enenv-template-folder que sea específico del entorno usa un placeholder <YOUR_*>. Ejecute lo siguiente para verificar que no quede nada pendiente antes de desplegar:
Estado Remoto
El estado se almacena en S3 por entorno. El bucket es inicializado porstate/terragrunt.hcl y referenciado por root.hcl. El patrón de nombres es ekb-terraform-state-<env-name>.