Saltar a contenido

Despliegue del proyecto

El despliegue de la aplicación es un requisito fundamental para la entrega del proyecto. Cada equipo deberá garantizar que su aplicación esté accesible y funcional desde un entorno externo, ya sea en un hosting de terceros o en un servidor VPS (Virtual Private Server). Esto permitirá evaluar la implementación en un entorno real y garantizar la usabilidad de la aplicación.

Opciones de despliegue

Hosting en plataformas externas

Los equipos pueden optar por utilizar servicios de hosting gratuitos o comerciales que soporten aplicaciones fullstack con Node.js, como:

  • Vercel: Ideal para aplicaciones React (frontend), aunque requiere configurar el backend en otro servicio.
  • Render: Ofrece hosting gratuito para aplicaciones backend con Node.js y bases de datos.
  • Railway: Permite desplegar aplicaciones MERN de manera sencilla, integrando el backend y la base de datos.
  • Heroku: Popular para proyectos Node.js, aunque con limitaciones en la versión gratuita.

Nota importante:
Los servicios de hosting gratuitos suelen presentar limitaciones e inconvenientes, como tiempos de inactividad, restricciones en el uso de recursos (CPU, memoria, almacenamiento) o configuraciones menos flexibles. Será responsabilidad del equipo investigar y evaluar si alguna de estas plataformas satisface las necesidades específicas de su proyecto.

Servidor VPS

El uso de un VPS es una opción recomendada por su flexibilidad y control. Proporciona un entorno completo donde se puede configurar tanto el backend como el frontend de manera personalizada.

  • Configurar un VPS implica instalar y configurar herramientas como:
  • Nginx o Apache para gestionar las peticiones HTTP.
  • Node.js y PM2 para ejecutar y gestionar el servidor.
  • MongoDB Atlas para la base de datos (opcionalmente, se puede instalar MongoDB localmente en el VPS).
  • Es una opción más avanzada, pero ofrece mayor estabilidad y control.

Requisitos mínimos para el despliegue

Accesibilidad:

  • La aplicación debe ser accesible desde un dominio o dirección IP pública.
  • Todas las funcionalidades deben estar disponibles y funcionar correctamente en el entorno desplegado.

Seguridad:

  • Implementar medidas básicas de seguridad en el servidor, como el uso de HTTPS (por ejemplo, con Let's Encrypt).
  • Configurar el backend para proteger datos sensibles y rutas autenticadas.

Documentación del despliegue:

  • Detallar en la Wiki del repositorio los pasos seguidos para el despliegue:
    • Herramientas utilizadas.
    • Configuraciones realizadas.
    • Soluciones implementadas ante posibles problemas.
  • Incluir una guía para probar la aplicación en el entorno desplegado (URL, credenciales de prueba, etc.).

Aspectos clave para la entrega

  • La aplicación debe estar desplegada y funcional antes de la fecha límite establecida.
  • Coordina con el profesor encargado del módulo para validar la configuración del despliegue y recibir feedback.

Nota: Asegúrate de planificar el despliegue con suficiente antelación para resolver posibles problemas técnicos.

Recuerda: La aplicación debe estar desplegada y accesible para la evaluación final. Sin un despliegue funcional, el proyecto no se considerará completo.