# syntax=docker/dockerfile:1.4 # BUILD STAGE FROM node:lts-iron AS builder # Establecer el directorio de trabajo WORKDIR /api # Copiar los archivos de dependencias COPY package.json . COPY tsconfig*.json . RUN yarn install RUN mkdir -p ./shared RUN mkdir -p ./server COPY shared ./shared COPY server ./server #CMD pwd && ls -la RUN cd ./shared && yarn install RUN cd ./server && yarn install # Ejecutar el build # Si hay un error, mostrarlo en detalle. RUN cd ./server && yarn run build || { echo 'Error during build'; exit 1; } # FINAL STAGE (Producción) FROM node:lts-iron AS prod WORKDIR /api # Copiar los archivos del build desde la fase anterior COPY --from=builder /api/dist ./dist # Instalar sólo las dependencias de producción en el servidor # RUN yarn install --production # Exponer el puerto que la API usa EXPOSE 3001 CMD pwd && ls -la # Comando para correr la aplicación #CMD ["yarn", "run", "server:start"]