Appearance
Despliegue a pendrive — Linux
Genera un paquete siva-linux/ autónomo que ejecuta SIVA en Linux desde un pendrive, sin instalar nada en el sistema y sin modificar el proyecto original.
- Script:
deploy/pendrive/linux/preparar.sh - Salida:
deploy/pendrive/linux/salida/siva-linux/(+siva-linux.zip) - Backend compilado (
dist/) con dependencias de producción.
Requisitos (máquina que genera el paquete)
- Linux con
rsync,python3,zipyrealpath. - Node portátil en
deploy/pendrive/node/node-v24.18.0-linux. backend/.envpresente.- Carpeta
logos/en la raíz del proyecto.
Generar el paquete
bash
cd deploy/pendrive/linux
chmod +x preparar.sh
./preparar.shEl script:
- Compila el frontend.
- Crea
salida/siva-linux/y copia Node Linux, el backend,frontend/distylogos/. - Parchea
backend/src/app.ts(helmet permisivo, CORS abierto y servido del SPA con fallback) ybackend/.env(CORS_ORIGIN=*). - Instala dependencias (
npm ci), compila el backend (npm run build) y elimina las dependencias de desarrollo (npm prune --omit=dev). - Crea el lanzador
siva.sh(ejecutable, un único puerto 3000) y comprimesalida/siva-linux.zip.
Usar en el pendrive
- Copiar
siva-linux/al pendrive (o descomprimir el zip). - Ejecutar
./siva.sh. - El lanzador libera el puerto 3000 si estuviera ocupado, arranca el backend con Node portátil, espera a
/api/health, abre el navegador y muestra la IP de LAN. - Acceso:
http://localhost:3000— usuariosuperadmin@inap.es, contraseñasuperadmin1234.
Notas
- El script no toca el proyecto original: todo se hace sobre la copia en
salida/. - Cada ejecución borra
salida/siva-linux/y sobrescribe el.zip. - El backend se ejecuta en producción (
node dist/server.js), sintsxni dependencias de desarrollo. puppeteer(generación de PDF) descarga Chromium; si la caché de Chromium no viaja en el pendrive, esa función puede no estar disponible en el destino.- El Node portátil es para
x86_64con glibc; en distribuciones muy antiguas podría no arrancar.