POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

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

Publicado el 02/10/2025

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.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio