# 🎯 MEMORIA: SaaS en Raspberry Pi 3 - Estado Actual **Fecha:** 13 Enero 2025 **Hash:** `raspberry-pi3-saas-setup-20250113` ## ✅ LO QUE ESTÁ FUNCIONANDO ### 1. Flask SaaS en Raspberry Pi - **Ubicación:** `/home/pi/gkachele-saas/` - **Puerto:** 5001 - **Estado:** ✅ Corriendo (2 procesos) - **Landing:** `landing_real.html` (GKACHELE™ original) - **Base de datos:** SQLite (`database/main.db`) ### 2. Nginx Configurado - **Configuración activa:** `gk-saas.komkida.duckdns.org` - **Ubicación:** `/etc/nginx/sites-available/gk-saas.komkida.duckdns.org` - **Proxy:** `localhost:5001` (SIN GitHub) - **Estado:** ✅ Funcionando ### 3. Dominio Remoto - **URL:** `http://gk-saas.komkida.duckdns.org` - **DuckDNS Token:** `9c5cff88-b6d7-4704-9b10-4a69afdff797` - **IP Raspberry:** `213.195.104.66` - **NOTA:** Este dominio NO tiene relación con GitHub ## 📁 ESTRUCTURA EN RASPBERRY ``` /home/pi/gkachele-saas/ ├── app.py # Flask backend ├── database/ │ ├── main.db # DB principal │ └── sites/ # DBs por cliente ├── sites/ # Sitios compilados ├── themes/ # Templates │ ├── gimnasio-claro/ │ └── restaurante-moderno/ ├── static/ │ └── style.css # CSS landing real └── templates/ ├── landing_real.html # Landing GKACHELE™ ├── register.html ├── login.html ├── dashboard.html ├── customizer.html └── admin.html ``` ## 🔧 CONFIGURACIÓN NGINX ### Archivo activo: `/etc/nginx/sites-available/gk-saas.komkida.duckdns.org` ```nginx server { listen 80; server_name gk-saas.komkida.duckdns.org; location / { proxy_pass http://localhost:5001; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } ``` ## 🔐 CREDENCIALES ### Raspberry Pi - **Host:** `komkida.duckdns.org` o `192.168.1.134` - **Puerto SSH:** 2222 - **Usuario:** `pi` - **Password:** `Gdk1983gdk45@` ### DuckDNS - **komkida.duckdns.org:** Token `9c5cff88-b6d7-4704-9b10-4a69afdff797` - **gkachele.duckdns.org:** Token `578331b3-ad7b-4154-835d-e496465257b0` ## 🚀 COMANDOS ÚTILES ### Actualizar DuckDNS ```bash python3 -c "import urllib.request; print(urllib.request.urlopen('https://www.duckdns.org/update?domains=komkida&token=9c5cff88-b6d7-4704-9b10-4a69afdff797&ip=').read())" ``` ### Verificar Flask ```bash curl http://localhost:5001/ ``` ### Recargar Nginx ```bash sudo nginx -t && sudo systemctl reload nginx ``` ### Ver logs ```bash tail -f /var/log/nginx/gk-saas-access.log tail -f /var/log/nginx/gk-saas-error.log ``` ## ⚠️ IMPORTANTE - **NO usar GitHub:** Todo es independiente en Raspberry - **Dominio principal:** `gk-saas.komkida.duckdns.org` (NO `gkachele.duckdns.org`) - **Raspberry Pi 3:** Recursos suficientes para SaaS pequeño - **SQLite:** Base de datos ligera, perfecta para Pi ## 📝 PRÓXIMOS PASOS 1. ✅ Instalar Gitea en Raspberry (opcional) 2. ✅ Automatizar DuckDNS (cron cada 5 min) 3. ✅ Crear servicio systemd para Flask 4. ✅ Configurar SSL/HTTPS (Let's Encrypt) ## 🎯 FLUJO COMPLETO ``` Cliente → gk-saas.komkida.duckdns.org ↓ Nginx (puerto 80) ↓ Flask (puerto 5001) ↓ SQLite (database/) ↓ Landing/SaaS funcionando ``` --- **Última actualización:** 13 Enero 2025 - 15:58