Desplegando una Tienda con MedusaJS 2.0 en un AWS EC2 Instancia

Implementación de MedusaJS: despliegue de un backend y un storefront de MedusaJS en una instancia Ubuntu alojada en AWS EC2. Además, configuración de Nginx como proxy inverso y frontend persistente gestionado por PM2. Recomendaciones para producción y escalado incluyendo integración de Stripe y auto

2 oct 2025 • 5 min de lectura • Equipo Q2BSTUDIO

inteligencia-artifial-software-aplicaciones

Si has decidido montar una tienda online y prefieres hacerlo por tu cuenta estás en el lugar correcto. En esta guía práctica repasaremos cómo desplegar un backend y un storefront de MedusaJS en una instancia Ubuntu alojada en AWS EC2. Al final tendrás una aplicación MedusaJS en funcionamiento accesible por dominio con Nginx como proxy inverso y frontend persistente gestionado por PM2. Además encontrarás recomendaciones para producción y escalado.

Sobre nosotros: Q2BSTUDIO es una empresa de desarrollo de software que ofrece aplicaciones a medida y software a medida, especialistas en inteligencia artificial, ciberseguridad y servicios cloud AWS y Azure. Si buscas desarrollar una solución personalizada podemos ayudarte con proyectos de desarrollo de aplicaciones a medida y migraciones a la nube con servicios cloud AWS y Azure.

Resumen del objetivo: desplegar MedusaJS con rutas separadas para admin API autenticación y storefront, persistencia del frontend con PM2 y Nginx configurado para manejar panel admin rutas por país y certificados SSL con Certbot.

Requisitos previos: una instancia Ubuntu en EC2 con grupo de seguridad que permita SSH 22 desde tu IP HTTP 80 y HTTPS 443 desde cualquier lugar; un dominio apuntando a la IP de la instancia; cuenta de Stripe para pagos y acceso a git para clonar repositorios.

Instalaciones básicas: actualiza el sistema e instala Docker Docker Compose Git Nginx Node.js PM2 Curl y Certbot. Activa el servicio Docker añade tu usuario al grupo docker y configura PM2 para reiniciar procesos en arranque. También crea y asegura el directorio donde vivirá el frontend por defecto por ejemplo /var/www/storefront y asigna permisos al usuario ubuntu.

Backend con Docker: clona el repositorio oficial de Medusa starter crea un docker compose con servicios para Postgres Redis y Medusa. El servicio Medusa expone el puerto 9000 y se conecta a la base de datos y a Redis mediante variables de entorno. En lugar de copiar cada línea de configuración aquí prepara un archivo .env con variables como DATABASE_URL REDIS_URL JWT_SECRET COOKIE_SECRET y CORS adecuados apuntando a tu dominio y a las direcciones locales de los servicios Docker.

Dockerfile y script de inicio: dentro del repositorio ajusta Dockerfile para instalar dependencias y copiar la aplicación y crea un start script que ejecute migraciones seed si aplica y arranque la aplicación. Construye y levanta con docker compose up --build -d y crea un usuario admin con npx medusa user desde el contenedor cuando el backend esté corriendo.

Configuración de Medusa: reemplaza medusa-config.ts para cargar variables de entorno y ajustar CORS y dominios permitidos. Asegúrate de incluir la URL de tu frontend en STORE_CORS y la del panel en ADMIN_CORS. Mantén los secretos fuera de repositorios públicos y usa archivos .env u otros mecanismos seguros para gestión de secretos.

Proxy inverso con Nginx: crea un bloque de servidor que escuche en 80 y dirija las rutas del storefront y del backend a los puertos locales 8000 y 9000 respectivamente. Añade reglas específicas para rutas por país como /dk /us /ng y proxies para /admin /store /auth y /app apuntando al backend. Habilita la configuración crea el enlace simbólico en sites-enabled elimina la configuración por defecto y prueba la sintaxis con nginx -t antes de recargar el servicio. Finalmente ejecuta Certbot para obtener certificados LetsEncrypt y habilitar HTTPS.

Frontend: clona el starter de Next.js para Medusa configura el archivo .env del frontend con MEDUSA_BACKEND_URL NEXT_PUBLIC_MEDUSA_PUBLISHABLE_KEY NEXT_PUBLIC_BASE_URL NEXT_PUBLIC_DEFAULT_REGION NEXT_PUBLIC_STRIPE_KEY y REVALIDATE_SECRET. Para obtener la publishable key crea la clave desde el panel admin en /app/settings/publishable-api-keys o usa un túnel SSH temporal si está detrás de un firewall.

CI CD con GitHub Actions: recomendamos automatizar despliegues del frontend mediante GitHub Actions. Configura secrets en el repositorio como SSH_PRIVATE_KEY SERVER_HOST SERVER_USER APP_DIR y las variables públicas y claves de Stripe y Medusa. Crea un workflow que haga checkout instale Node compile y copie los archivos al servidor por SCP luego reinicie el proceso con PM2. Asegúrate de que en el servidor exista el directorio destino y los permisos adecuados para el usuario que ejecuta SSH.

Gestión de procesos: usa PM2 para arrancar y mantener el frontend en producción y opcionalmente para monitorizarlo. PM2 proporciona persistencia tras reinicios y facilita logs y restarts automáticos.

Depuración y recomendaciones: revisa logs de docker compose logs -f y de PM2 pm2 logs. Si surgen errores revisa variables de entorno CORS y que Redis y Postgres estén accesibles desde el contenedor Medusa. Para problemas con certificados revisa que el dominio apunte correctamente y que Nginx pueda contactar los puertos locales.

Buenas prácticas para producción: separa bases de datos en RDS o servicios gestionados usa Redis gestionado para caching y sesiones y emplea balanceadores y CDN como CloudFront para servir el storefront estático. Implementa copias de seguridad periódicas políticas de recuperación ante desastres y monitoreo con alertas. En una próxima entrega hablaremos sobre escalar Medusa con ECS RDS CloudFront y configurar alertas y métricas.

Servicios relacionados: si necesitas integrar módulos avanzados de pago o automatizar flujos de negocio podemos ayudarte con integración de Stripe y automatización de procesos. También ofrecemos servicios de ciberseguridad para auditoría y pentesting y consultoría en inteligencia artificial aplicada a ecommerce para crear agentes IA y mejoras en la conversión y personalización. Consulta nuestras soluciones de inteligencia artificial para empresas y proyectos de Business Intelligence y Power BI para análisis avanzado.

Palabras clave integradas: 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.

Si quieres que despleguemos tu tienda o prefieres una solución gestionada contacta con Q2BSTUDIO para evaluar requisitos diseño y presupuesto y así obtener una plataforma robusta segura y escalable adaptada a tu negocio.

Próximos pasos sugeridos: revisar la configuración actual probar despliegue en staging automatizar backups y planear migración a servicios gestionados en AWS para alta disponibilidad y rendimiento. En futuros artículos mostraremos una guía detallada de migración a ECS y RDS y la integración con CloudFront y monitoreo.

¿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