zappyzep/Dockerfile
2024-11-02 14:55:29 +02:00

36 lines
826 B
Docker

FROM node:20
RUN mkdir /zeppelin
RUN corepack enable
RUN chown node:node /zeppelin
USER node
ARG API_URL
# Install dependencies before copying over any other files
RUN corepack prepare --activate pnpm@latest
COPY --chown=node:node package.json pnpm-lock.yaml pnpm-workspace.yaml /zeppelin
RUN mkdir /zeppelin/backend
COPY --chown=node:node backend/package.json /zeppelin/backend
RUN mkdir /zeppelin/shared
COPY --chown=node:node shared/package.json /zeppelin/shared
RUN mkdir /zeppelin/dashboard
COPY --chown=node:node dashboard/package.json /zeppelin/dashboard
WORKDIR /zeppelin
RUN pnpm i
COPY --chown=node:node . /zeppelin
# Build backend
WORKDIR /zeppelin/backend
RUN pnpm run build
# Build dashboard
WORKDIR /zeppelin/dashboard
RUN pnpm run build
# Prune dev dependencies
WORKDIR /zeppelin
RUN pnpm prune --prod