Files
mercadodevida/docs/deployment.md

1.4 KiB

Deploy del monolito MercadoDeVida

¿Basta con copiar project/?

Sí, para levantar el monolito en un host basta con traer la carpeta project/ completa y ejecutar:

cd project
./scripts/monolith.sh prod start

o, para reemplazar una versión anterior ya corriendo:

cd project
./scripts/monolith.sh prod restart

Qué hace monolith.sh prod start/restart

  1. Limpia procesos antiguos del proyecto y listeners en puertos gestionados.
  2. Arranca PostgreSQL y Redis con Docker Compose.
  3. Instala dependencias con npm ci en backend, admin, TPV, frontend y storefront.
  4. Ejecuta migraciones.
  5. Compila backend y frontends.
  6. Arranca servicios con nohup y guarda PID/logs en project/.runtime/prod/.
  7. Verifica HTTP para cada servicio.

Servicios por defecto:

Servicio Puerto
Backend API 3000
Admin 3001
TPV 3002
Frontend 3003
Storefront SEO 3004

Requisitos del host

  • Node.js >= 22
  • npm
  • Docker + Docker Compose
  • Bash, curl, lsof
  • Variables/secretos en project/.env

Si no existe .env, el script crea uno de desarrollo. En producción real conviene crear .env explícito antes de arrancar.

Lo que NO gestiona

  • Traefik/Nginx/Authelia o certificados TLS.
  • Arranque automático tras reinicio del host.
  • Backups de base de datos.

Para producción estable conviene envolver ./scripts/monolith.sh prod restart con systemd, supervisor o el orquestador elegido.