Modularización de GKACHELE SaaS
This commit is contained in:
133
backups/backup-20260114-085602/local/MEMORIA_RASPBERRY_SAAS.md
Normal file
133
backups/backup-20260114-085602/local/MEMORIA_RASPBERRY_SAAS.md
Normal file
@@ -0,0 +1,133 @@
|
||||
# 🎯 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
|
||||
Reference in New Issue
Block a user