feat: agregar Dockerfile y configuración Docker

This commit is contained in:
DillusDev001 2026-09-18 22:45:05 -04:00
parent 9417cc8f2d
commit 809c908000
3 changed files with 42 additions and 3 deletions

2
.gitignore vendored
View file

@ -14,7 +14,7 @@ out/
coverage/
# Environment
# .env
.env
.env.local
.env.development.local
.env.test.local

39
Dockerfile Normal file
View file

@ -0,0 +1,39 @@
# Stage 1: Builder
FROM node:22-alpine AS builder
RUN corepack enable && corepack prepare pnpm@latest --activate
WORKDIR /app
COPY package.json pnpm-lock.yaml ./
RUN pnpm install --frozen-lockfile
COPY . .
RUN pnpm run build
# Stage 2: Production
FROM node:22-alpine
RUN corepack enable && corepack prepare pnpm@latest --activate
RUN addgroup -g 1001 -S nodejs && \
adduser -S nodejs -u 1001
WORKDIR /app
COPY package.json pnpm-lock.yaml ./
RUN pnpm install --frozen-lockfile --prod && pnpm store prune
COPY --from=builder --chown=nodejs:nodejs /app/dist ./dist
# Crear directorio para uploads
RUN mkdir -p /app/uploads && chown nodejs:nodejs /app/uploads
USER nodejs
EXPOSE 3000
CMD ["node", "dist/main"]

View file

@ -49,9 +49,9 @@ export function templateRecibido1(data: TemplateRecibidoData): string {
¡Hola ${e.saludo} *${data.nombreCliente}*!
Tu *paquete* ha sido recibido en nuestra sucursal *"${data.nombreSucursal}"*, puedes pasar a recogerlo desde el día *${fechaDesde}* hasta el *${fechaHasta}* sin costo adicional.
Tu *paquete* ha sido recibido en nuestra sucursal *"${data.nombreSucursal}"*, puedes pasar a recogerlo desde el día *${fechaDesde}* hasta el *${fechaHasta}* con un costo de ${e.dinero} *${data.costoBase} Bs.*.
Recuerda que el costo para recoger tu paquete es de ${e.dinero} *${data.costoBase} Bs.* y tienes *${data.diasIncluidos} días* para hacerlo. Pasados los *${data.diasIncluidos} días* se aplicará un adicional de ${e.dinero} *${data.costoDiaAdicional}* Bs. por día y por paquete.`;
Recuerda que pasados los *${data.diasIncluidos} días* se aplicará un adicional de ${e.dinero} *${data.costoDiaAdicional}* Bs. por día y por paquete.`;
}
// ======================================================================================================== //