Infra
Docker, Terraform, monitorización y pipelines de CI/CD.
80 archivos·10 tareas
0% completado
¿Qué es esto?
Todo lo que hace falta para correr BLANK en producción y para que CI pase cada commit. En local es casi todo Docker Compose; en nube es Hetzner con Terraform.
Incluye monitorización completa: Prometheus para métricas, Grafana para dashboards, Loki para logs. Alertas a ntfy.
Los pipelines de GitHub Actions corren tests, linters, migraciones y builds de imágenes. Despliegue por ahora manual.
Stack técnico
- Docker + Docker Compose
- Terraform (Hetzner Cloud)
- Prometheus + Grafana + Loki + Promtail
- Traefik (gateway + TLS)
- ntfy (push gratis)
- GitHub Actions
Estructura de carpetas
infra/ ├── docker/ Dockerfiles por servicio ├── terraform/ │ ├── hetzner/ VPS, DNS, firewall │ └── modules/ ├── monitoring/ │ ├── prometheus/ │ ├── grafana/dashboards/ │ └── loki/ ├── ci/ workflows reutilizables └── scripts/
Archivos clave
| Archivo | Qué hace | Prioridad |
|---|---|---|
| docker-compose.yml (raíz) | Stack de desarrollo completo. | Alta |
| terraform/hetzner/main.tf | VPS, red privada, DNS. | Alta |
| monitoring/prometheus/prometheus.yml | Config de scraping. | Media |
| monitoring/grafana/dashboards/blank.json | Dashboards base. | Media |
| .github/workflows/ci.yml | CI principal. | Media |
| scripts/health-check.sh | Ping a todos los servicios. | Baja |
Cómo ejecutarlo
Levantar el stack de infra en local
make docker-upBajar todo
make docker-downVer estado de Terraform
cd infra/terraform/hetzner && terraform planAplicar cambios de infra (con cuidado)
cd infra/terraform/hetzner && terraform applyQué falta
0 de 10 completados
Alta Media Baja
Dependencias con otros módulos
- Todo el stack local depende del docker-compose.yml raíz.
- Producción depende de una cuenta de Hetzner y un dominio con DNS delegable.