Despliegue de tienda MedusaJS 2.0 en una instancia EC2 de AWS (en Español) O bien: Despliegue MedusaJS 2.0 Store en EC2 de AWS (Español)

Despliegue de tienda headless MedusaJS 2.0 en AWS EC2: guía paso a paso para desarrolladores y equipos que quieran controlar su infraestructura, con API y panel de administración MedusaJS funcionando en Docker, Next.js como storefront, Nginx como reverse proxy con SSL, PM2 para mantener el frontend

2 oct 2025 • 4 min read • Q2BSTUDIO Team

inteligencia-artifial-software-aplicaciones

Introducción: Este artículo explica paso a paso cómo desplegar una tienda MedusaJS 2.0 en una instancia EC2 de AWS usando una configuración sencilla y escalable. Está pensado para desarrolladores y equipos que desean controlar su infraestructura y obtener una tienda headless lista para producción. Q2BSTUDIO, empresa especializada en aplicaciones a medida, software a medida, inteligencia artificial y ciberseguridad, ofrece servicios y consultoría para implementar y optimizar este tipo de soluciones.

Resumen de lo que obtendrás: una API y panel de administración MedusaJS funcionando en Docker, una tienda Next.js como storefront, Nginx como reverse proxy con SSL, PM2 para mantener el frontend persistente y recomendaciones para escalar con servicios cloud.

Requisitos previos: cuenta AWS y una instancia EC2 (por ejemplo t3.medium con 30 GB), un dominio apuntando a la IP pública, cuenta Stripe para pagos, conocimientos básicos de Linux y Git. Asegura reglas de seguridad: puerto 22 restringido a tu IP, puertos 80 y 443 abiertos para HTTP y HTTPS.

Instalación de prerrequisitos en la instancia: actualiza el sistema e instala paquetes esenciales: curl git nginx nginx-utils certbot python3-certbot-nginx nodejs npm docker docker compose plugin redis y postgresql si decides instalarlos localmente. Instala PM2 globalmente con npm install -g pm2 y configura pm2 startup para reinicios automáticos.

Provisionamiento del servidor: crea el grupo de seguridad, lanza la EC2 con la clave privada, configura el usuario ubuntu o ec2-user y asegúrate de que la zona horaria y la internacionalización estén correctas.

Despliegue del backend Medusa con Docker: clona el repositorio oficial medusa-starter-default. Crea un docker compose con tres servicios principales: postgres, redis y medusa. Postgres almacena datos, Redis maneja sesiones y caché, y medusa expone la API en el puerto 9000. Define variables de entorno para DATABASE_URL y REDIS_URL y usa volúmenes para persistencia. Construye un Dockerfile simple que instale dependencias y arranque la aplicación mediante un script start que ejecute migraciones con npx medusa db:migrate y luego inicie el servidor.

Archivo .env recomendado: incluye STORE_CORS, ADMIN_CORS, AUTH_CORS, REDIS_URL, JWT_SECRET, COOKIE_SECRET, DATABASE_URL y otros parámetros. Sustituye domainhere.com por tu dominio real y no expongas secretos en repos públicos.

Comandos útiles: docker compose up --build -d para levantar los servicios, docker compose logs -f para seguir logs, docker compose run --rm medusa npx medusa user -e tuemail -p tupassword para crear un usuario admin.

Configuración de Nginx como reverse proxy: crea un bloque de servidor en /etc/nginx/sites-available para tu dominio que redirija rutas del storefront a localhost:8000 y las rutas /admin, /store, /auth y /app a localhost:9000. Habilita la configuración, elimina el default si interfiere y recarga nginx con nginx -t y systemctl reload nginx. Genera certificados con Certbot usando certbot --nginx -d tudominio -d www.tudominio para asegurar el tráfico con HTTPS.

Configuración del frontend Next.js: clona nextjs-starter-medusa y ajusta la .env del frontend con MEDUSA_BACKEND_URL apuntando al backend desplegado, la clave pública de Medusa NEXT_PUBLIC_MEDUSA_PUBLISHABLE_KEY, la clave pública de Stripe NEXT_PUBLIC_STRIPE_KEY y NEXT_PUBLIC_BASE_URL con la URL pública del storefront. Prueba localmente con npm run dev y verifica las conexiones a la API.

Despliegue automático del frontend mediante GitHub Actions: crea claves SSH y súbelas como secretos en el repo. Usa un workflow que instale node 20, construya la app y copie los archivos al servidor via scp, luego reinicie el proceso con PM2. En el servidor crea /var/www/storefront y asegura permisos adecuados con chown para el usuario que ejecutará PM2.

Monitoreo y debugging: revisa logs de Docker y PM2, prueba rutas protegidas del admin y endpoints de la API, valida CORS si el frontend no puede hablar con el backend y confirma que las migraciones corran correctamente. Usa herramientas como top, docker stats y journalctl para diagnosticar problemas de recursos y reinicios.

Buenas prácticas de seguridad: mantiene actualizados los paquetes, usa certificados TLS, restringe SSH por IP y considera autenticación con claves y deshabilitar acceso por contraseña. Para producción evite secretos en archivos planos, utiliza servicios de secret management o variables de entorno en entornos gestionados.

Escalado y siguientes pasos: para cargas mayores considera separar la base de datos en RDS, usar Elasticache para Redis y orquestar contenedores con ECS o EKS. Usa CloudFront para acelerar el contenido estático del storefront y configura alertas y logs centralizados con CloudWatch. En un próximo artículo se puede explicar una arquitectura con ECS, RDS, CloudFront y autoscaling.

Servicios y apoyo profesional: si necesitas implementación, migraciones o desarrollo de características a medida, en Q2BSTUDIO ofrecemos soluciones integrales de aplicaciones a medida y software a medida, y acompañamos en la adopción de servicios cloud aws y azure. Podemos ayudar en la integración con IA, seguridad y reporting avanzado con Power BI. Conoce nuestros servicios de nube en servicios cloud AWS y Azure y descubre desarrollo de aplicaciones en software y aplicaciones a medida.

Palabras clave incluidas: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, inteligencia de negocio, ia para empresas, agentes IA, power bi. Si quieres que adaptamos este despliegue a tus requisitos, optimicemos la arquitectura o integremos soluciones de inteligencia artificial y monitoreo, contacta a Q2BSTUDIO para una consultoría técnica.

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.

Live Chat