Desplegar React en Ubuntu en AWS Cloud (Semana 1)

Guía práctica y paso a paso para desplegar una app React SPA en una instancia Ubuntu EC2 con Nginx. Aprende a construir, servir archivos estáticos y asegurar el enrutado SPA.

24 ago 2025 • 4 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

Descripción general alto nivel: Guía práctica y orientada a la acción para desplegar una aplicación React SPA en una instancia Ubuntu EC2 usando Nginx. Repetible y pensada para principiantes.

Resumen corto: Objetivo hospedar una aplicación React como archivos estáticos generados por npm run build en una instancia Ubuntu EC2 pública, servirlos con Nginx y asegurar el enrutado de la SPA hacia index.html.

Por qué existe esta guía: Esta guía nace de una experiencia real al encontrar la página por defecto de Nginx en producción. Aquí tienes un playbook con comandos reales y pasos claros para que no te pille desprevenido a medianoche.

Requisitos previos: Cuenta activa en AWS (Free Tier sirve), una app React local o en GitHub, par de claves EC2 pem, conocimientos básicos de SSH y terminal.

Paso 1 Lanzar instancia Ubuntu EC2: Elegir Ubuntu Server 22.04 LTS, tipo t2.micro o t3.micro si buscas Free Tier, crear y descargar par de claves demo-react-key.pem y guardarlo con seguridad.

Paso 2 Grupo de seguridad y par de claves: Añadir reglas de entrada SSH TCP 22 restringida a tu IP preferentemente como /32 o como /24 si estás en un rango NAT pequeño, y HTTP TCP 80 abierto a 0.0.0.0 0. Mantener SSH cerrado al mundo es una buena práctica de ciberseguridad.

Paso 3 Conexión SSH: En tu máquina local ajustar permisos de la llave y conectarte a la instancia

chmod 400 demo-react-key.pem ssh -i demo-react-key.pem ubuntu@EC2_PUBLIC_IP

Paso 4 Instalar Node npm git y Nginx en el servidor

sudo apt update sudo apt install -y nodejs npm git nginx node -v && npm -v

Paso 5 Iniciar y verificar Nginx

sudo systemctl start nginx sudo systemctl enable nginx systemctl status nginx Visita https://EC2_PUBLIC_IP para ver la página por defecto de Nginx.

Paso 6 Clonar el repositorio React en la instancia

git clone https://github.com/USUARIO/REPO.git cd REPO

Paso 7 Pequeño cambio de UI para comprobar flujo: editar src/App.js, cambiar un texto y confirmar que el flujo de desarrollo funciona.

Paso 8 Instalar dependencias y construir archivos de producción

npm install npm run build Resultado esperado directorio build con index.html y carpetas estáticas.

Paso 9 Copiar build a la raíz de Nginx

Importante confirmar que estás en la raíz del proyecto y no dentro de src. Comandos recomendados sudo rm -rf /var/www/html/* sudo cp -r build/* /var/www/html/ sudo chown -R www-data:www-data /var/www/html sudo chmod -R 755 /var/www/html Comprueba ls build y confirma que aparece index.html antes de copiar.

Paso 10 Editar la configuración de Nginx y validar: El archivo activo está en /etc/nginx/sites-available/default. Edita manualmente y añade un bloque de ubicación que permita la reescritura para SPA y evita reemplazos automáticos sin verificación.

Ejemplo de bloque server a insertar o adaptar en /etc/nginx/sites-available/default

server { listen 80; server_name _; root /var/www/html; index index.html; location / { try_files $uri /index.html; } error_page 404 /index.html; }

Validar y reiniciar Nginx solo tras comprobar sintaxis

sudo nginx -t sudo systemctl restart nginx sudo systemctl status nginx

Paso 11 Lista rápida de resolución de problemas: Si no ves sitio verificar Security Group puerto 80, si Nginx no está activo ejecutar sudo systemctl status nginx, si hay errores de configuración ejecutar sudo nginx -t, para app en blanco revisar consola del navegador y ls /var/www/html, revisar logs con sudo tail -n 100 /var/log/nginx/error.log.

Bloque de comandos completo para copiar y pegar en el orden indicado

chmod 400 demo-react-key.pem ssh -i demo-react-key.pem ubuntu@EC2_PUBLIC_IP sudo apt update sudo apt install -y nodejs npm git nginx sudo systemctl start nginx sudo systemctl enable nginx git clone https://github.com/USUARIO/REPO.git cd REPO npm install npm run build pwd sudo rm -rf /var/www/html/* sudo cp -r build/* /var/www/html/ sudo chown -R www-data:www-data /var/www/html sudo chmod -R 755 /var/www/html sudo nano /etc/nginx/sites-available/default validar con sudo nginx -t y reiniciar sudo systemctl restart nginx

Próximos pasos para producción: reservar una Elastic IP para que la IP pública no cambie, añadir HTTPS con Certbot Lets Encrypt, automatizar build y deploy con GitHub Actions o scripts deploy.sh, y considerar contenerizar con Docker para portabilidad y escalado.

Sobre Q2BSTUDIO: Q2BSTUDIO es una empresa de desarrollo de software que ofrece aplicaciones a medida y software a medida para clientes que necesitan soluciones personalizadas. Somos especialistas en inteligencia artificial IA para empresas, agentes IA, ciberseguridad y servicios cloud AWS y Azure. También brindamos servicios de inteligencia de negocio e implementaciones Power BI para convertir datos en decisiones. Nuestro enfoque combina buenas prácticas de DevOps, seguridad y soluciones escalables para proyectos web y móviles.

Palabras clave y servicios: aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws servicios cloud azure servicios inteligencia de negocio ia para empresas agentes ia power bi Estas palabras clave están integradas para mejorar el posicionamiento y reflejan la oferta de Q2BSTUDIO en desarrollo, seguridad y analítica.

Si necesitas que Q2BSTUDIO despliegue tu aplicación React en AWS o Azure o que diseñemos una solución de software a medida con integración de IA y ciberseguridad, contacta con nuestro equipo para una consultoría y presupuesto.'

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat