Spaces:
Configuration error
📋 INSTRUCCIONES DE DESPLIEGUE EN HUGGINGFACE SPACES
🎯 Archivos Necesarios
Para desplegar en HuggingFace Spaces necesitas estos 5 archivos:
- app.py - Aplicación principal (backend Python con Gradio)
- index.html - Frontend de la aplicación
- requirements.txt - Dependencias de Python
- README.md - Documentación del proyecto
- .gitignore - Archivos a ignorar en git (opcional)
🚀 PASO A PASO: Despliegue en HuggingFace
Paso 1: Crear cuenta en HuggingFace
- Ve a https://huggingface.co/join
- Regístrate con tu email
- Verifica tu cuenta
Paso 2: Crear un nuevo Space
- Ve a https://huggingface.co/spaces
- Click en "Create new Space" (botón azul arriba a la derecha)
- Completa el formulario:
- Owner: Tu usuario
- Space name:
osorno-runners(o el nombre que prefieras) - License: MIT
- Select the Space SDK: Selecciona Gradio
- Space hardware: CPU basic (gratis) - 2 vCPU • 16 GB
- Visibility: Public (o Private si prefieres)
- Click en "Create Space"
Paso 3: Subir archivos
Opción A: Mediante la interfaz web (Recomendado para principiantes)
- Una vez creado el Space, verás la pantalla principal
- Click en la pestaña "Files"
- Click en "Add file" → "Upload files"
- Arrastra o selecciona los 5 archivos:
- app.py
- index.html
- requirements.txt
- README.md
- .gitignore (opcional)
- Agrega un mensaje de commit: "Initial commit"
- Click en "Commit to main"
Opción B: Mediante Git (Para usuarios avanzados)
# 1. Clonar el repositorio del Space
git clone https://huggingface.co/spaces/TU_USUARIO/osorno-runners
cd osorno-runners
# 2. Copiar los archivos del proyecto
cp /ruta/a/los/archivos/* .
# 3. Agregar y hacer commit
git add .
git commit -m "Initial commit: Osorno Runners v1.0"
# 4. Push a HuggingFace
git push
Paso 4: Esperar el despliegue
- HuggingFace detectará automáticamente que es una app Gradio
- Instalará las dependencias de
requirements.txt - Ejecutará
app.py - En 1-3 minutos verás tu aplicación corriendo
¡Listo! Tu aplicación está en vivo 🎉
La URL será: https://huggingface.co/spaces/TU_USUARIO/osorno-runners
🔧 Verificación y Pruebas
1. Verificar que la app esté corriendo
- Deberías ver la pantalla de login
- Las credenciales por defecto funcionan:
- USER / 123
- ADMIN / 123
2. Probar funcionalidades básicas
- Login como ADMIN
- Crear un plan de entrenamiento de prueba
- Ver que el plan se guarde correctamente
- Cerrar sesión y volver a entrar
- Verificar que el plan sigue ahí (persistencia SQLite)
3. Verificar logs
En la pestaña "Logs" del Space puedes ver:
🚀 Iniciando Osorno Runners - Sistema de Entrenamiento
✅ Base de datos inicializada correctamente
✅ Usuarios por defecto creados
✅ HTML cargado correctamente
🌐 Iniciando servidor en puerto 7860
📊 Base de Datos SQLite
Ubicación
La base de datos osorno_runners.db se crea automáticamente en el directorio raíz del Space.
Persistencia
- ✅ Los datos SE MANTIENEN entre reinicios del Space
- ✅ La base de datos es persistente
- ⚠️ Si ELIMINAS el Space, pierdes todos los datos
Backup
Para hacer backup:
- Ve a la pestaña "Files" de tu Space
- Busca el archivo
osorno_runners.db - Click en "Download"
- Guarda el archivo localmente
Para restaurar:
- Ve a "Files"
- "Upload files"
- Sube tu archivo
osorno_runners.db
🐛 Solución de Problemas
Error: "Space failed to build"
Causa: Problema en requirements.txt o app.py
Solución:
- Verifica que
requirements.txttenga solo:gradio==4.44.0 - Revisa los logs para ver el error específico
- Asegúrate que no haya errores de sintaxis en app.py
Error: "Application not responding"
Causa: El servidor no inició correctamente
Solución:
- Ve a "Settings" → "Factory reboot" → "Reboot Space"
- Espera 2-3 minutos
- Si persiste, revisa los logs
Error: "index.html not found"
Causa: No se subió el archivo HTML
Solución:
- Verifica que
index.htmlesté en la raíz del Space - El nombre debe ser exacto:
index.html(minúsculas)
Error de login: "Credenciales inválidas"
Causa: Base de datos no inicializada
Solución:
- Reboot del Space
- Verifica en logs que aparezca: "✅ Usuarios por defecto creados"
🔐 Seguridad
Cambiar contraseñas por defecto
Edita app.py, busca la función init_db() y cambia:
cursor.execute("INSERT INTO users VALUES ('USER', 'NUEVA_PASS', 'user', 'Usuario')")
cursor.execute("INSERT INTO users VALUES ('ADMIN', 'NUEVA_PASS_ADMIN', 'admin', 'Admin')")
Luego:
- Commit los cambios
- Reboot del Space
- ELIMINA el archivo
osorno_runners.db(si ya existía) - Reboot nuevamente para que se cree con las nuevas credenciales
📈 Monitoreo
Estadísticas del Space
En la página principal del Space puedes ver:
- Número de visitantes
- Uso de CPU/RAM
- Uptime
Limits del plan gratuito
- Storage: 50 GB
- RAM: 16 GB
- CPU: 2 vCPU
- Persistent storage: ✅ Sí
🚀 Mejoras Post-Despliegue
- Personalizar README.md: Agrega capturas de pantalla
- Agregar más usuarios: Modifica la función
init_db() - Tema personalizado: Edita
index.htmly los estilos CSS - Analytics: Agrega Google Analytics si quieres estadísticas
📞 Soporte
Si tienes problemas:
- Revisa los logs del Space
- Busca en HuggingFace Community
- Abre un issue en el repositorio
✅ Checklist Final
Antes de considerar el despliegue completo, verifica:
- El Space está en status "Running" (verde)
- Puedes hacer login con USER/123
- Puedes crear un plan como ADMIN
- El plan se guarda y persiste después de recargar
- Puedes ver los planes creados
- La exportación a PDF funciona
- Los cálculos de IMC y zonas FC son correctos
¡Felicidades! Tu aplicación Osorno Runners está en producción en HuggingFace Spaces 🎉🏃♂️
URL de ejemplo: https://huggingface.co/spaces/TU_USUARIO/osorno-runners
Comparte el link con tus usuarios y ¡a entrenar!