140 lines
3.7 KiB
Markdown
140 lines
3.7 KiB
Markdown
# CloudRestoreAS - Guía Rápida de Inicio
|
|
|
|
## Instalación Express (5 minutos)
|
|
|
|
### 1. Pre-requisitos
|
|
```powershell
|
|
# Verifica Python 3.11+
|
|
python --version
|
|
|
|
# Verifica ODBC Driver
|
|
Get-OdbcDriver | Where-Object {$_.Name -like "*SQL Server*"}
|
|
```
|
|
|
|
### 2. Instala y Ejecuta
|
|
```powershell
|
|
# Prepara el entorno de desarrollo (Python + venv + requirements)
|
|
.\scripts\dev-setup.ps1
|
|
|
|
# Ejecuta la aplicación
|
|
.\venv\Scripts\python.exe runner.py
|
|
```
|
|
|
|
> Para **desplegar** el binario compilado en un servidor usa `install.ps1` (raíz), que es
|
|
> autocontenido y no necesita Python. Ver [BUILD.md](BUILD.md) §6.
|
|
|
|
### Integración con PANEL_BASES_ANEXO24
|
|
|
|
Si usas el panel para asignar servidores de restauración, ver [INTEGRACION_PANEL.md](INTEGRACION_PANEL.md) para tokens, catálogo dinámico (`target-catalog`) y prueba end-to-end.
|
|
|
|
**Prueba local en tu PC** (carpetas + config automática):
|
|
|
|
```powershell
|
|
.\scripts\prepare_local_test.ps1
|
|
.\venv\Scripts\python.exe runner.py
|
|
```
|
|
|
|
Copia el ZIP a `C:\CloudRestore\Entrada` (ver `LEEME.txt` en esa carpeta).
|
|
|
|
### 3. Configuración Básica (en la aplicación)
|
|
|
|
1. **Tab Configuración**:
|
|
- Carpeta Entrada: `C:\Backups\Entrada`
|
|
- Carpeta Procesados: `C:\Backups\Procesados`
|
|
- Carpeta Fallados: `C:\Backups\Fallados`
|
|
- Carpeta Extracción: `C:\Temp\CloudRestore`
|
|
- Carpeta Data SQL: `C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA`
|
|
- 7-Zip: Click "Detectar"
|
|
- SQL Server: `localhost` (Windows Auth)
|
|
- Click "Guardar Configuración"
|
|
|
|
2. **Tab Nodos** (ejemplo):
|
|
```
|
|
Nuevo Nodo:
|
|
- Nombre: BACKUP_VENTAS.ZIP
|
|
- DB: Ventas_DB
|
|
- Activo: ✓
|
|
```
|
|
|
|
3. **Menú Motor → Iniciar**
|
|
|
|
4. **Prueba**: Copia `BACKUP_VENTAS.ZIP` a la carpeta de entrada
|
|
|
|
## Flujo Típico
|
|
|
|
```
|
|
📁 Carpeta Entrada
|
|
└── BACKUP_VENTAS.ZIP ← Copias el archivo aquí
|
|
|
|
↓ (10 segundos - verificación de estabilidad)
|
|
|
|
🔄 Procesamiento Automático
|
|
1. ✓ Detectar archivo estable
|
|
2. ✓ Mapear BACKUP_VENTAS.ZIP → Ventas_DB
|
|
3. ✓ Extraer .bak con 7-Zip
|
|
4. ✓ Obtener estructura lógica (FILELISTONLY)
|
|
5. ✓ Restaurar Ventas_DB (REPLACE)
|
|
6. ✓ Limpiar archivos temporales
|
|
|
|
↓
|
|
|
|
📁 Carpeta Procesados/2026-01-25
|
|
└── BACKUP_VENTAS.ZIP ← Movido automáticamente
|
|
|
|
✅ Job Completado (ver Dashboard/Jobs)
|
|
```
|
|
|
|
## Comandos Útiles
|
|
|
|
```powershell
|
|
# Ejecutar aplicación
|
|
.\venv\Scripts\python.exe runner.py
|
|
|
|
# Verificar instalación
|
|
.\venv\Scripts\python.exe test_installation.py
|
|
|
|
# Generar ejecutable
|
|
.\build.ps1
|
|
|
|
# Ver logs en tiempo real
|
|
Get-Content .\logs\app.log -Wait -Tail 50
|
|
```
|
|
|
|
## Estructura de Directorios Recomendada
|
|
|
|
```
|
|
C:\CloudRestore\
|
|
├── Entrada\ ← ZIP entrantes
|
|
├── Procesados\ ← ZIP exitosos (por fecha)
|
|
│ ├── 2026-01-25\
|
|
│ └── 2026-01-26\
|
|
├── Fallados\ ← ZIP que fallaron
|
|
└── Temp\ ← Extracción temporal
|
|
```
|
|
|
|
## Troubleshooting Express
|
|
|
|
| Problema | Solución |
|
|
|----------|----------|
|
|
| Archivo no se procesa | Espera 10s o click "Escanear Ahora" |
|
|
| NODE_NOT_MAPPED | Crea el nodo exacto en Tab Nodos |
|
|
| Error SQL | Verifica permisos y conexión en Tab Config |
|
|
| 7-Zip falla | Verifica que el ZIP no esté corrupto |
|
|
|
|
## Monitoreo
|
|
|
|
- **Dashboard**: Contadores en tiempo real
|
|
- **Jobs**: Historial y detalles
|
|
- **Logs**: Eventos del sistema
|
|
|
|
## Para Ejecutar 24/7
|
|
|
|
1. Inicia la aplicación (el motor arranca solo si `CLOUDRESTORE_AUTO_START=true`)
|
|
2. Cierra la ventana con **X** — se minimiza a la bandeja del sistema
|
|
3. La app continuará monitoreando en segundo plano
|
|
4. Para salir por completo: bandeja → **Salir** o menú **Archivo → Salir**
|
|
|
|
---
|
|
|
|
**Tip**: Lee el [README.md](README.md) completo para configuración avanzada.
|