🐳 Dockerfile Multistage
parent
8828d46a8a
commit
6ac86ebfe5
24
Dockerfile
24
Dockerfile
|
@ -2,8 +2,28 @@ FROM node:14.17.0-alpine3.13 AS build
|
|||
WORKDIR /build
|
||||
RUN yarn config set --home enableTelemetry 0
|
||||
COPY package.json /build/
|
||||
RUN yarn
|
||||
RUN yarn --production --frozen-lockfile
|
||||
# Cache these modules for production
|
||||
RUN cp -R node_modules/ prod_node_modules/
|
||||
# Install development dependencies
|
||||
RUN yarn --frozen-lockfile
|
||||
COPY . /build
|
||||
RUN yarn next telemetry disable
|
||||
RUN yarn build
|
||||
# RUN yarn prisma migrate dev
|
||||
|
||||
# Production image
|
||||
FROM node:14.17.0-alpine3.13 AS production
|
||||
WORKDIR /app
|
||||
|
||||
# Copy cached dependencies
|
||||
COPY --from=build /build/prod_node_modules ./node_modules
|
||||
|
||||
# Copy generated Prisma client
|
||||
COPY --from=build /build/node_modules/.prisma/ ./node_modules/.prisma/
|
||||
|
||||
COPY --from=build /build/package.json ./
|
||||
COPY --from=build /build/.next ./.next
|
||||
COPY --from=build /build/public ./public
|
||||
COPY prisma ./prisma
|
||||
RUN yarn prisma migrate dev
|
||||
CMD ["yarn", "start"]
|
||||
|
|
Loading…
Reference in New Issue