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 • Equipo 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?

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