Files
sentry-toolkit/Dockerfile

36 lines
727 B
Docker

FROM node:20.12.2-alpine3.18 AS base
# All deps stage
FROM base AS deps
WORKDIR /app
ADD package.json package-lock.json ./
RUN npm ci
FROM node:22 AS dev-deps
WORKDIR /app
ADD package.json package-lock.json ./
ENV NODE_ENV=development
RUN npm ci
EXPOSE 3333
# Production only deps stage
FROM base AS production-deps
WORKDIR /app
ADD package.json package-lock.json ./
RUN npm ci --omit=dev
# Build stage
FROM base AS build
WORKDIR /app
COPY --from=deps /app/node_modules /app/node_modules
ADD . .
RUN node ace build
# Production stage
FROM base
ENV NODE_ENV=production
WORKDIR /app
COPY --from=production-deps /app/node_modules /app/node_modules
COPY --from=build /app/build /app
EXPOSE 8080
CMD ["node", "./bin/server.js"]