Desplegar Node.js en Linux con Nginx y PM2 - una guía práctica para principiantes

Despliega Node.js en Linux con Nginx y PM2 con esta guía práctica paso a paso. Aprende a optimizar tu servidor para un rendimiento óptimo.

20 dic 2025 • 5 min read • Q2BSTUDIO Team

Desplegar Node.js en Linux con Nginx y PM2: Guía práctica.

Gancho: por qué esta pila importa

Si has creado una aplicación Node.js y quieres que funcione de forma fiable en producción, no basta con ejecutar node app.js y cruzar los dedos. La combinación Linux + Nginx + PM2 ofrece una solución pragmática: estabilidad del sistema operativo, rendimiento y terminación SSL con Nginx, y gestión automática de procesos con PM2. Este artículo resume la lógica y da un camino práctico y directo para desplegar una app real rápidamente.

Contexto: el problema que enfrentan la mayoría de desarrolladores

Las aplicaciones nuevas fallan en producción por razones sencillas: procesos que crashean, puertos expuestos, ausencia de HTTPS o reinicios del servidor sin configuración de arranque. Necesitas un patrón de despliegue que:

- Mantenga la app en ejecución tras caídas y reinicios

- Oculte puertos internos del acceso público

- Gestione HTTPS, activos estáticos y picos de carga

Nginx y PM2 en un VPS Linux resuelven todo esto sin una orquestación pesada y con herramientas estándar compatibles con distribuciones comunes como Ubuntu o CentOS.

Visión general de la solución

Flujo de alto nivel: Nginx escucha en 80 y 443 y hace proxy hacia tu proceso Node en un puerto interno como 3000. PM2 ejecuta y monitoriza el proceso Node, reinicia al fallar y resucita procesos tras reinicios. Usa un archivo ecosistema PM2 para versionar la configuración del proceso. Estas prácticas encajan perfectamente con equipos que desarrollan aplicaciones a medida y software a medida y quieren un entorno estable para crecer.

Checklist rápido antes de empezar

- Provisiona un servidor Linux (1-2 GB RAM es suficiente para apps pequeñas)

- Conéctate por SSH y actualiza paquetes

- Instala Node.js (NodeSource o nvm), Nginx y PM2

- Asegura que el DNS apunte al servidor antes de emitir certificados SSL

- Mantén código y configuración ecosystem en git

Implementación: pasos esenciales y accionables

- Instala Node.js y verifica node -v y npm -v. Para múltiples proyectos usa nvm.

- Sube o clona tu app en una carpeta dedicada, por ejemplo /home/usuario/mi-app y ejecuta npm install --production.

- Instala PM2 globalmente y arranca la app con un nombre amigable: pm2 start app.js --name mi-app. Ejecuta pm2 startup y pm2 save para asegurar reinicios.

- Instala Nginx y crea un server block que haga proxy_pass a https://127.0.0.1:3000, prueba nginx -t y recarga Nginx.

- Asegura el sitio con Let’s Encrypt usando certbot --nginx para HTTPS gratuito y renovaciones automáticas.

Nota importante: no expongas el puerto de Node al internet público. Deja que Nginx gestione el tráfico entrante y SSL.

PM2: hazlo repetible

Usa un archivo ecosystem.config.js para describir tus apps y variables de entorno. Con PM2 puedes correr múltiples apps desde un solo archivo, definir NODE_ENV y PORT por entorno y usar clustering con instances: max para aprovechar todos los núcleos CPU. Inicia todo con pm2 start ecosystem.config.js --env production y guarda el estado con pm2 save. Evita watch true en producción; usa CI para reinicios controlados.

Nginx: proxy inverso y consejos prácticos

Configura proxy_pass a https://127.0.0.1:3000 y añade cabeceras comunes como X-Forwarded-For y Host. Prueba nginx -t antes de recargar. Activa gzip y cabeceras de cache para activos estáticos. Añade cabeceras de seguridad básicas como X-Frame-Options, X-Content-Type-Options y X-XSS-Protection. Si alojas varias apps crea bloques de servidor separados por dominio y apunta cada uno al puerto interno de su app.

Seguridad, monitorización y validación

- Firewall: activa UFW en Ubuntu o firewalld en CentOS y permite SSH y Nginx Full (puertos 22, 80, 443).

- HTTPS: usa certbot con el plugin nginx para automatizar emisión y renovación de certificados.

- Logs y monitoring: usa pm2 logs y pm2 monit para chequeos rápidos. Instala pm2-logrotate para evitar crecimiento excesivo de logs y haz pruebas de carga ligeras con herramientas como ab mientras observas pm2 monit, top/htop y logs de Nginx.

Buenas prácticas rápidas

- Ejecuta Node bajo un usuario no root

- Nunca subas secretos al repositorio; usa variables de entorno o bloques env en PM2

- Haz npm audit regularmente y manten dependencias actualizadas

Sobre Q2BSTUDIO

En Q2BSTUDIO somos una empresa de desarrollo de software dedicada a crear aplicaciones a medida y software a medida, con especialización en inteligencia artificial, ciberseguridad y servicios cloud. Ofrecemos soluciones completas desde diseño y desarrollo hasta despliegue y operación en AWS y Azure. Si buscas apoyo para construir una solución robusta y escalable podemos ayudarte con desarrollo a medida y consultoría en IA y seguridad.

Si te interesa que desarrollemos tu plataforma o aplicación personalizada visita nuestra página de desarrollo de apps en

software a medida y aplicaciones a medida

y para proyectos que integren modelos y agentes IA consulta

inteligencia artificial para empresas

Palabras clave y servicios relacionados

Este enfoque cubre muchas necesidades de empresas que buscan servicios cloud aws y azure, servicios inteligencia de negocio y power bi, ia para empresas, agentes IA y soluciones de ciberseguridad y pentesting integradas en su ciclo de vida de desarrollo.

Conclusión

Desplegar Node.js en Linux con Nginx y PM2 te da una base fiable y mantenible sin la complejidad inicial de contenedores o plataformas de orquestación. Empieza pequeño: pon Node y PM2 en marcha, coloca Nginx delante, añade HTTPS con certbot y formaliza la configuración con un archivo ecosistema y CI. Ese patrón cubre la mayoría de necesidades de producción para proyectos indie, MVPs y SaaS en fases tempranas. Si necesitas ayuda profesional para ejecutar este despliegue o ampliar la solución con inteligencia artificial, ciberseguridad o servicios cloud, en Q2BSTUDIO podemos acompañarte en todo el proceso.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.