Guía para principiantes: Despliegue de Node.js en AWS Elastic Beanstalk con GitHub Actions

Guía práctica en español para desplegar una app Node.js en AWS Elastic Beanstalk y configurar CI/CD con GitHub Actions para pruebas y despliegue continuo.

17 ago 2025 • 7 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

Automatizar el despliegue de aplicaciones ahorra tiempo y mejora el flujo de trabajo de desarrollo. En esta guía práctica en español aprenderás a desplegar una aplicación Node.js en AWS Elastic Beanstalk y a configurar una canalización CI CD con GitHub Actions para que cada vez que se realice un push a la rama principal el código se pruebe y se despliegue de forma automática.

Qué es AWS Elastic Beanstalk: Elastic Beanstalk es un servicio de AWS que facilita el despliegue y la gestión de aplicaciones en la nube. Permite subir la aplicación y abstrae la provisión de capacidad, balanceo de carga, escalado automático y monitorización de la salud de la aplicación.

Por qué usar Elastic Beanstalk: simplifica la infraestructura, facilita la escalabilidad y puede ser económico al aprovechar el nivel gratuito de AWS para aplicaciones sencillas.

Qué es GitHub Actions: GitHub Actions es una plataforma de CI CD que permite automatizar la compilación, pruebas y despliegue. Con Actions se crean flujos de trabajo que pueden ejecutarse cuando hay un push o un pull request y que contienen trabajos y pasos que se ejecutan en runners gestionados.

Estructura habitual de un flujo de trabajo: evento que desencadena el flujo, jobs o trabajos que agrupan pasos y pasos que ejecutan comandos concretos. En esta guía usaremos un job de pruebas y otro de despliegue.

Requisitos previos: una cuenta AWS con un usuario IAM con permisos para Elastic Beanstalk, un repositorio en GitHub con el código de la aplicación Node.js y Node.js instalado localmente versión 18 o superior.

Paso 1 Configurar la aplicación Node.js: para empezar rápido puedes clonar un repositorio de ejemplo con Express y TypeScript. Desde la terminal ejecutar git clone https://github.com/samowolabi/nodejs-elastic-beanstalk-with-githubactions-app.git y luego cd nodejs-elastic-beanstalk-with-githubactions-app. Instala dependencias con npm install. La estructura típica del proyecto incluye la carpeta .github workflows con el archivo de flujo, src con el código fuente, test con pruebas, package.json y tsconfig.json.

Paso 2 Crear el entorno en Elastic Beanstalk: en la consola de AWS busca Elastic Beanstalk y crea una nueva aplicación. Asigna un nombre descriptivo y selecciona la plataforma Node.js adecuada, por ejemplo Node.js 18 o superior. Para despliegues simples usa el preset Single instance si deseas permanecer en el nivel gratuito durante las pruebas.

Configurar acceso de servicio: Elastic Beanstalk necesita un service role y un instance profile. Si no existen puedes crear un nuevo service role con el nombre aws-elasticbeanstalk-service-role y un instance profile para las instancias EC2 que incluya políticas como AWSElasticBeanstalkWebTier. Estas acciones se realizan desde la propia consola de Elastic Beanstalk y la consola de IAM.

Revisión y lanzamiento: una vez configurado el rol y el perfil de instancia puedes omitir configuraciones avanzadas y lanzar el entorno. AWS tardará unos minutos en crear los recursos y, cuando esté listo, verás una URL pública con la aplicación de ejemplo.

Variables de entorno: si tu aplicación necesita variables configura en la consola de Elastic Beanstalk dentro de Configuration Software Edit y añade pares clave valor como NODE_ENV con valor production. Elastic Beanstalk inyecta automáticamente la variable PORT.

Paso 3 Configurar CI CD con GitHub Actions: para que GitHub Actions despliegue en tu cuenta AWS necesitas unas credenciales con access key y secret key. En la consola de IAM selecciona el usuario correspondiente y crea una access key en Security credentials seleccionando Third party service si se solicita. Copia Access key ID y Secret access key en el momento de la creación porque el secret no se mostrará de nuevo.

Añadir credenciales a GitHub: abre tu repositorio en GitHub y ve a Settings Secrets and variables Actions. Crea nuevos secretos de repositorio llamados AWS_ACCESS_KEY_ID y AWS_SECRET_ACCESS_KEY con los valores obtenidos en AWS. Estos secretos serán usados por el flujo de GitHub Actions para autenticarse con AWS.

Descripción del flujo de trabajo CI CD: el flujo típico ejecuta pruebas en varias versiones de Node.js, por ejemplo 18.x y 20.x. El job de test realiza checkout del código, configura Node.js con actions setup node, instala dependencias con npm ci, ejecuta npm test y construye con npm run build. El job de deploy depende del job de test y solo se ejecuta en push a la rama main. En deploy se hace checkout, se instala Node.js, se instala dependencias, se construye, se crea un paquete zip excluyendo archivos innecesarios y se utiliza una acción como beanstalk deploy para subir deploy.zip a Elastic Beanstalk. Es importante actualizar application name, environment name y region para que coincidan con tu entorno en Elastic Beanstalk.

Paso 4 Desplegar la aplicación: realiza los cambios que necesites, commitea y push a main con git add . git commit -m feat setup CI CD y git push origin main. Desde la pestaña Actions de GitHub puedes monitorizar la ejecución del flujo y revisar los logs de los jobs test y deploy. Cuando el job de deploy finalice, abre la URL de tu entorno Elastic Beanstalk y deberías ver la respuesta de tu aplicación.

Solución de problemas comunes: si el despliegue falla revisa que las credenciales AWS en GitHub Secrets sean correctas y que el usuario IAM tenga permisos como elasticbeanstalk s3 ec2 iam PassRole y logs. Para errores de compilación o pruebas ejecuta npm test y npm run build localmente. Revisa los logs en GitHub Actions y en Elastic Beanstalk Logs Request Logs Last 100 Lines para errores específicos del entorno.

Buenas prácticas: mantén actualizadas las dependencias, limita los permisos del usuario IAM a lo estrictamente necesario cuando puedas, usa variables de entorno para credenciales sensibles y habilita monitorización y alarmas en AWS para producción.

Acerca de Q2BSTUDIO: en Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones adaptadas a las necesidades de cada cliente. Ofrecemos software a medida, aplicaciones a medida y servicios integrales que incluyen inteligencia artificial, ciberseguridad, servicios cloud aws y azure y servicios inteligencia de negocio. Nuestros equipos diseñan soluciones de ia para empresas, desarrollan agentes IA personalizados y crean paneles con power bi para obtener insights y mejorar la toma de decisiones.

Servicios destacados de Q2BSTUDIO: desarrollo de aplicaciones a medida para web y móvil, integración de inteligencia artificial y agentes IA para automatizar procesos, consultoría y despliegue de servicios cloud aws y azure, implementación de estrategias de ciberseguridad y soluciones de inteligencia de negocio con power bi. Todo esto con metodologías ágiles orientadas a resultados y escalabilidad.

Por qué elegir Q2BSTUDIO: combinamos experiencia técnica en desarrollo de software a medida y conocimiento en inteligencia artificial con prácticas de seguridad y despliegue cloud. Ayudamos a empresas a transformar datos en valor real mediante servicios inteligencia de negocio, a proteger sus activos con ciberseguridad y a optimizar operaciones con soluciones de ia para empresas y agentes IA que automatizan tareas repetitivas.

Palabras clave para posicionamiento: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi. Recomendamos incluir estas keywords en las páginas de servicios y en artículos técnicos para mejorar visibilidad y SEO.

Conclusión: desplegar una aplicación Node.js en Elastic Beanstalk y automatizar el proceso con GitHub Actions es una forma efectiva de reducir errores humanos y acelerar entregas. Con una correcta configuración de roles en AWS, el uso de secretos en GitHub y un flujo de pruebas bien definido, puedes asegurar despliegues repetibles y fiables. Si necesitas ayuda para implementar esta solución o deseas una plataforma a medida que aproveche inteligencia artificial, ciberseguridad y servicios cloud, en Q2BSTUDIO podemos acompañarte desde el diseño hasta el despliegue y la monitorización continua.

Contacto y siguiente paso: si quieres que Q2BSTUDIO implemente un pipeline CI CD, integre soluciones de inteligencia artificial o mejore la seguridad y escalabilidad en AWS o Azure, ponte en contacto con nuestro equipo para una consultoría personalizada y descubre cómo transformar tu proyecto con software a medida y servicios de inteligencia de negocio con power bi.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat