Manual de Instalación

Guía de Instalación Rápida

Instrucciones paso a paso para instalar y configurar el sistema Antonella en minutos

5
Pasos
15
Minutos
100%
Funcional

1. REQUISITOS PREVIOS

Sistema Operativo & Software

Guía completa de instalación y configuración que incluye requisitos previos, especificaciones del sistema y software requerido.

Requisitos del Sistema

Antes de comenzar la instalación, asegúrate de que tu sistema cumpla con los requisitos mínimos especificados.

Especificaciones del Sistema

Windows

Sistema Operativo: Windows 10 (64-bit) o superior
RAM: 8 GB mínimo, 16 GB recomendado
Almacenamiento: 10 GB espacio libre
Procesador: Intel i5 o AMD equivalente

macOS

Sistema Operativo: macOS 10.15 (Catalina) o superior
RAM: 8 GB mínimo, 16 GB recomendado
Almacenamiento: 10 GB espacio libre
Procesador: Intel o Apple Silicon

Linux

Sistema Operativo: Ubuntu 20.04 LTS o superior
RAM: 8 GB mínimo, 16 GB recomendado
Almacenamiento: 10 GB espacio libre
Procesador: x86_64 compatible

Software Requerido

Herramientas de Desarrollo

Git: 2.30.0 o superior
Curl: 7.68.0 o superior
Unzip: 6.0 o superior
Xcode (macOS): 12.0 o superior

SDKs de Desarrollo

Android SDK: API Level 21+
iOS SDK: 12.0+ (macOS)
Chrome: Para desarrollo web

Verificación de Requisitos

Ejecuta los comandos de verificación en la siguiente sección para asegurarte de que tu sistema cumple con todos los requisitos antes de continuar.

Red

Puertos: 80, 443, 3000, 5432, 6379
DNS: Configurado
SSL: Certificado válido
Firewall: Configurado

Verificador de Requisitos

Ejecuta este script para verificar automáticamente si tu sistema cumple con todos los requisitos:

Script de Verificación
#!/bin/bash
echo "=== Verificador de Requisitos Antonella ==="

# Verificar sistema operativo
echo "Sistema Operativo:"
lsb_release -a | grep "Description"

# Verificar CPU
echo -e "\nCPU:"
nproc
lscpu | grep "Model name"

# Verificar RAM
echo -e "\nRAM:"
free -h

# Verificar almacenamiento
echo -e "\nAlmacenamiento:"
df -h /

# Verificar Node.js
echo -e "\nNode.js:"
node --version

# Verificar PostgreSQL
echo -e "\nPostgreSQL:"
psql --version

# Verificar Redis
echo -e "\nRedis:"
redis-server --version

# Verificar Nginx
echo -e "\nNginx:"
nginx -v

echo -e "\n=== Verificación Completada ==="

2. Descarga del Software

Descarga

Opciones de Descarga

GitHub (Recomendado)

Descarga desde el repositorio oficial para obtener la versión más reciente y acceso a actualizaciones.

# Clonar el repositorio
git clone https://github.com/antonella/panaderia-system.git

# Navegar al directorio
cd panaderia-system

# Verificar la versión
git tag --list

Archivo ZIP

Descarga directa del archivo comprimido para instalación offline.

Tamaño: ~50 MB
Versión: v2.1.0
Fecha: 15/01/2024

Verificación de Integridad

Después de la descarga, verifica la integridad del archivo:

# Verificar checksum (si descargaste el ZIP)
echo "verificar_este_checksum" | sha256sum -c

# Verificar estructura del proyecto
ls -la panaderia-system/

# Verificar archivos esenciales
ls -la panaderia-system/package.json
ls -la panaderia-system/README.md

3. Proceso de Instalación

Instalación

Instalación Paso a Paso

1

Preparar el Sistema

Actualizar el sistema y instalar dependencias básicas:

# Actualizar sistema
sudo apt update && sudo apt upgrade -y

# Instalar dependencias básicas
sudo apt install -y curl wget git build-essential

# Instalar Node.js
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs

# Verificar instalación
node --version
npm --version
2

Instalar PostgreSQL

Configurar la base de datos principal:

# Instalar PostgreSQL
sudo apt install -y postgresql postgresql-contrib

# Iniciar servicio
sudo systemctl start postgresql
sudo systemctl enable postgresql

# Configurar usuario
sudo -u postgres createuser --interactive
sudo -u postgres createdb antonella

# Configurar contraseña
sudo -u postgres psql -c "ALTER USER tu_usuario PASSWORD 'tu_contraseña';"
3

Instalar Redis

Configurar el sistema de cache:

# Instalar Redis
sudo apt install -y redis-server

# Iniciar servicio
sudo systemctl start redis-server
sudo systemctl enable redis-server

# Verificar instalación
redis-cli ping
4

Instalar Nginx

Configurar el servidor web:

# Instalar Nginx
sudo apt install -y nginx

# Iniciar servicio
sudo systemctl start nginx
sudo systemctl enable nginx

# Verificar instalación
nginx -v
5

Instalar Antonella

Instalar y configurar la aplicación:

# Navegar al directorio del proyecto
cd panaderia-system

# Instalar dependencias
npm install

# Crear archivo de configuración
cp .env.example .env

# Editar configuración
nano .env

# Ejecutar migraciones
npm run migrate

# Iniciar aplicación
npm start

Consejos de Instalación

Backup

Realiza un backup completo del sistema antes de la instalación

Tiempo

La instalación completa toma aproximadamente 15-20 minutos

Seguridad

Cambia todas las contraseñas por defecto después de la instalación

4. Configuración Inicial

Configuración

Archivo de Configuración

Configuración del Archivo .env

# Configuración de la aplicación
NODE_ENV=production
PORT=3000

# Configuración de la base de datos
DB_HOST=localhost
DB_PORT=5432
DB_NAME=antonella
DB_USER=tu_usuario
DB_PASSWORD=tu_contraseña

# Configuración de Redis
REDIS_HOST=localhost
REDIS_PORT=6379

# Configuración JWT
JWT_SECRET=tu_jwt_secret_muy_seguro
JWT_EXPIRES_IN=24h

# Configuración de email
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=tu_email@gmail.com
SMTP_PASS=tu_password_de_aplicacion

# Configuración de la aplicación
APP_NAME=Antonella Panadería
APP_URL=https://tu-dominio.com
ADMIN_EMAIL=admin@tu-panaderia.com

# Configuración de archivos
UPLOAD_PATH=/var/www/antonella/uploads
MAX_FILE_SIZE=10485760

Configuración de Nginx

Archivo de Configuración Nginx

server {
    listen 80;
    server_name tu-dominio.com www.tu-dominio.com;
    
    # Redireccionar a HTTPS
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl http2;
    server_name tu-dominio.com www.tu-dominio.com;
    
    # Certificado SSL
    ssl_certificate /etc/letsencrypt/live/tu-dominio.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/tu-dominio.com/privkey.pem;
    
    # Configuración SSL
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512;
    ssl_prefer_server_ciphers off;
    
    # Proxy a la aplicación
    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        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;
        proxy_cache_bypass $http_upgrade;
    }
    
    # Archivos estáticos
    location /static/ {
        alias /var/www/antonella/public/;
        expires 1y;
        add_header Cache-Control "public, immutable";
    }
}

Configuración de Firewall

# Configurar UFW
sudo ufw allow ssh
sudo ufw allow 'Nginx Full'
sudo ufw allow 3000
sudo ufw enable

# Verificar estado
sudo ufw status

Configuración SSL con Let's Encrypt

# Instalar Certbot
sudo apt install -y certbot python3-certbot-nginx

# Obtener certificado SSL
sudo certbot --nginx -d tu-dominio.com -d www.tu-dominio.com

# Verificar renovación automática
sudo certbot renew --dry-run

5. Verificación y Pruebas

Verificación

Verificación del Sistema

Servicios del Sistema

# Verificar servicios
sudo systemctl status postgresql
sudo systemctl status redis-server
sudo systemctl status nginx
sudo systemctl status antonella

# Verificar puertos
sudo netstat -tlnp | grep -E ':(80|443|3000|5432|6379)'

Base de Datos

# Conectar a PostgreSQL
psql -h localhost -U tu_usuario -d antonella

# Verificar tablas
\dt

# Verificar conexión desde la aplicación
npm run test:db

Acceso Web

# Verificar acceso local
curl http://localhost:3000

# Verificar acceso externo
curl https://tu-dominio.com

# Verificar SSL
openssl s_client -connect tu-dominio.com:443

Pruebas de Funcionalidad

Prueba de Autenticación

Verificar que el sistema de login funcione correctamente:

  1. Acceder a la URL de la aplicación
  2. Intentar iniciar sesión con credenciales de prueba
  3. Verificar redirección al dashboard
  4. Verificar cierre de sesión

Prueba de Base de Datos

Verificar operaciones CRUD básicas:

  1. Crear un producto de prueba
  2. Editar el producto creado
  3. Verificar que los cambios se guarden
  4. Eliminar el producto de prueba

Prueba de Rendimiento

Verificar que el sistema responda adecuadamente:

  1. Medir tiempo de carga de páginas
  2. Verificar respuesta bajo carga
  3. Comprobar funcionamiento del cache
  4. Verificar logs de errores

6. Optimización del Sistema

Rendimiento

Optimizaciones de Rendimiento

Optimización de Base de Datos

# Configurar PostgreSQL para mejor rendimiento
# Editar postgresql.conf
sudo nano /etc/postgresql/14/main/postgresql.conf

# Configuraciones recomendadas:
shared_buffers = 256MB
effective_cache_size = 1GB
work_mem = 4MB
maintenance_work_mem = 64MB
checkpoint_completion_target = 0.9
wal_buffers = 16MB
default_statistics_target = 100

# Reiniciar PostgreSQL
sudo systemctl restart postgresql

Optimización de Node.js

# Configurar PM2 para gestión de procesos
npm install -g pm2

# Iniciar aplicación con PM2
pm2 start app.js --name "antonella"

# Configurar PM2 para inicio automático
pm2 startup
pm2 save

# Configurar variables de entorno para Node.js
export NODE_ENV=production
export NODE_OPTIONS="--max-old-space-size=2048"

Optimización de Nginx

# Configurar worker processes
worker_processes auto;
worker_connections 1024;

# Configurar gzip
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_types text/plain text/css text/xml text/javascript application/javascript application/xml+rss application/json;

# Configurar cache
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
    expires 1y;
    add_header Cache-Control "public, immutable";
}

Monitoreo de Rendimiento

htop

Monitor de procesos en tiempo real

# Instalar htop
sudo apt install htop

# Ejecutar
htop

iotop

Monitor de actividad de disco

# Instalar iotop
sudo apt install iotop

# Ejecutar
sudo iotop

nethogs

Monitor de uso de red

# Instalar nethogs
sudo apt install nethogs

# Ejecutar
sudo nethogs

7. Soporte Post-Instalación

Soporte

Recursos de Soporte

Soporte Directo

  • Teléfono: +1 (555) 123-4567
  • Email: soporte@antonella.com
  • Chat: Disponible 24/7
  • WhatsApp: +1 (555) 987-6543

Mantenimiento Regular

Diario

  • Verificar logs de errores
  • Monitorear uso de recursos
  • Verificar backups automáticos

Semanal

  • Actualizar dependencias de seguridad
  • Revisar métricas de rendimiento
  • Limpieza de logs antiguos

Mensual

  • Análisis completo de seguridad
  • Optimización de base de datos
  • Revisión de certificados SSL

¿Necesitas Ayuda?

Nuestro equipo de soporte está disponible 24/7 para ayudarte con cualquier problema o consulta.