Esta guía proporciona instrucciones paso a paso para implementar Brazilware en un entorno de producción.
Requisitos previos
Antes de comenzar la implementación, asegúrese de que el servidor cumpla con los siguientes requisitos:
- Node.js (versión 18.x o superior)
- NPM (versión 8.x o superior)
- Acceso a una terminal/línea de comandos
- Git (opcional, para clonar el repositorio)
- Clave API de OpenAi (para funcionalidad de IA)
Paso de implementación
1. Obtener el código fuente
Existen dos formas de obtener el código fuente:
Opción 1: Clonar el repositorio de Git
git clone https://github.com/azurejoga/brasilware.git
cd brasilware
Opción 2: Subir directamente desde los archivos
Si ya tiene los archivos del proyecto, súbalos al servidor y navegue hasta el directorio del proyecto.
2. Instalar dependencias
Ejecute el siguiente comando para instalar todas las dependencias necesarias:
npm install
4. Construir el proyecto
Ejecute el comando de construcción para generar archivos optimizados de producción:
npm run build
5. Iniciar el servidor
Para iniciar el servidor en modo de producción, ejecute:
npm run start
Para mantener el servidor en ejecución permanentemente, le recomendamos usar una herramienta como PM2:
# Instalar PM2 globalmente
npm install -g pm2
# Iniciar la aplicación con PM2
pm2 start npm --name "brasilware" -- start
# Configurar PM2 para que inicie automáticamente después de reiniciar el servidor
pm2 startup
pm2 save
6. Configurar un proxy inverso (opcional, pero recomendado)
Para un mejor rendimiento y seguridad, recomendamos configurar un servidor NGINX como Proxy Inverso:
Instalación de NGINX:
# En sistemas basados en Debian/Ubuntu
sudo apt update
sudo apt install nginx
# En sistemas basados en RHEL/Centos
sudo yum install nginx
Configuración de NGINX:
Cree un archivo de configuración para su sitio:
sudo nano /etc/nginx/sites-available/brasilware
Agregue el siguiente contenido:
server {
listen 80;
server_name tu-dominio.com www.tu-dominio.com;
location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Active la configuración y reinicie NGINX:
sudo ln -s /etc/nginx/sites-available/brasilware /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
7. Configurar https con Let's Encrypt (recomendado)
Para mayor seguridad, configure https utilizando Let's Encrypt:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d tu-dominio.com -d www.tu-dominio.com
Siga las instrucciones para generar y configurar los certificados automáticamente.
Estructura de directorios importantes
client/
: Código de Frontendserver/
: Código fuente del Backendshared/
: Esquemas y tipos compartidosuploads/
: Directorio donde se almacenan los archivos cargadosdocs/
: Documentación del proyecto
Mantenimiento y Monitoreo
Registros
Para ver los registros de la aplicación cuando está gestionada por PM2:
pm2 logs brasilware
Actualizar
Para actualizar la aplicación con una nueva versión:
# Detener la aplicación
pm2 stop brasilware
# Obtener los cambios si está usando git
git pull
# O actualice los archivos manualmente si es necesario
# Instalar dependencias y reconstruir
npm install
npm run build
# Reiniciar la aplicación
pm2 restart brasilware
Respaldo
Es importante realizar copias de seguridad periódicas de los siguientes directorios:
data/
: Contiene datos de almacenamiento localuploads/
: Contiene todos los PDFs y módulos cargados
Ejemplo de comando de respaldo:
# Crear un directorio de respaldo
mkdir -p ~/backups
# Respaldo de data y uploads
tar -czf ~/backups/brasilware-data-$(date +%Y%m%d).tar.gz ./data ./uploads
Resolución de problemas comunes
El servidor no arranca
Revise los registros de errores con:
npm run start > error.log 2>&1
cat error.log
Problemas con los permisos de archivos
Asegúrese de que el usuario que ejecuta la aplicación tenga permisos de lectura/escritura en los directorios data
y uploads
:
sudo chown -R tu-usuario:tu-grupo ./data ./uploads
sudo chmod -R 777 ./data ./uploads
Error en la integración con la API de OpenAi
Verifique que la clave API esté configurada
Requisitos recomendados
Para el uso típico de Brazilware en un entorno de producción, recomendamos:
- CPU: 1 núcleo o más
- RAM: Mínimo de 1GB, recomendado 2GB
- Almacenamiento: 20MB o más, dependiendo del volumen de PDFs y módulos almacenados
- Ancho de banda: Al menos 10 Mbps para Carga/Descarga de Informes
Contacto y soporte
Para ayuda adicional, contacte al equipo de desarrollo: