El Makefile como CLI operativo del stack
En lugar de recordar largas secuencias de comandos Docker, el stack expone un Makefile que actúa como CLI operativo. Cada target encapsula una operación con sus dependencias y orden correcto.
Targets principales
# Despliegue completo en producción
make prod ENV_FILE=.env.prod
# Levantar Superset (no incluido en make prod)
docker compose --env-file .env.prod -f 04-bi.yml up -d
# Crear usuario kanban completo (Authentik + Fizzy)
make kanban-user email='usuario@dominio.com' name='Nombre Apellido'
# Sincronizar identidades Fizzy desde lista
make fizzy-sync emails='u1@dominio.com u2@dominio.com'
# Inicializar base de datos
make db-init
Secuencia de despliegue
make prod levanta los stacks en este orden: 02-data.yml → 01-infra.yml → 03-app.yml → 05-ops.yml. Superset (04-bi.yml) debe arrancarse aparte porque tiene dependencias de inicialización que pueden interferir con el resto del stack si se levantan en paralelo.
Git pull seguro en servidor
Cuando el servidor tiene cambios locales que pueden solapar con el pull:
cd /root/K_FRA
git stash push -m "server-local-before-pull" 01-infra.yml 02-data.yml 03-app.yml
git pull --ff-only
git diff stash@{0} -- 01-infra.yml 02-data.yml 03-app.yml
# si el diff está vacío, el stash ya no aporta nada
git stash drop stash@{0}