hrms-api-log/docker/Dockerfile

31 lines
716 B
Text
Raw Normal View History

2024-12-04 13:03:16 +07:00
# Base stage
FROM node:lts-alpine AS base
2024-07-10 17:53:27 +07:00
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable
WORKDIR /app
COPY . .
2024-12-04 13:03:16 +07:00
# Dependencies stage
2024-07-10 17:53:27 +07:00
FROM base AS deps
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile
2024-12-04 13:03:16 +07:00
# Build stage
2024-07-10 17:53:27 +07:00
FROM base AS build
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile
RUN pnpm run build
2024-12-04 13:03:16 +07:00
# Production stage
FROM node:lts-alpine AS prod
2024-07-10 17:53:27 +07:00
ENV NODE_ENV="production"
2024-12-04 13:03:16 +07:00
WORKDIR /app
# Copy necessary files from previous stages
2024-07-10 17:53:27 +07:00
COPY --from=deps /app/node_modules /app/node_modules
COPY --from=build /app/dist /app/dist
COPY --from=base /app/static /app/static
2024-12-04 13:03:16 +07:00
# Start the application
2024-07-10 17:53:27 +07:00
CMD ["pnpm", "run", "start"]