a bit better caching on the docker file

This commit is contained in:
Carl-Gerhard Lindesvärd
2023-11-02 20:47:35 +01:00
parent 107feda4ad
commit 13618d1fd4

View File

@@ -32,23 +32,35 @@ COPY pnpm-workspace.yaml pnpm-workspace.yaml
COPY apps/web/package.json apps/web/package.json
COPY packages/types/package.json packages/types/package.json
# BUILD
FROM base AS build
WORKDIR /app/apps/web
RUN pnpm install --frozen-lockfile --ignore-scripts
COPY . /app
WORKDIR /app
COPY apps apps
COPY packages packages
COPY tooling tooling
WORKDIR /app/apps/web
RUN pnpm dlx prisma generate
RUN pnpm run build
# PROD
FROM base AS prod
WORKDIR /app/apps/web
RUN pnpm install --frozen-lockfile --prod --ignore-scripts
RUN pnpm dlx prisma generate
# FINAL
FROM base AS runner
COPY --from=build /app/package.json /app/package.json
COPY --from=prod /app/node_modules /app/node_modules
COPY --from=build /app/apps/web /app/apps/web
COPY --from=prod /app/apps/web/node_modules /app/apps/web/node_modules
WORKDIR /app/apps/web
RUN pnpm dlx prisma generate
EXPOSE 3000
CMD [ "pnpm", "start" ]