FROM node:16-alpine as deps WORKDIR /usr/src/frontend COPY ./package.json ./yarn.lock ./ RUN yarn install --frozen-lockfile FROM node:16-alpine as builder WORKDIR /usr/src/frontend COPY --from=deps /usr/src/frontend/package.json . COPY --from=deps /usr/src/frontend/node_modules ./node_modules COPY svelte.config.js tsconfig.json ./ COPY ./static ./static COPY ./src ./src RUN yarn build FROM node:16-alpine as runner WORKDIR /usr/src/frontend COPY --from=deps /usr/src/frontend/package.json . COPY --from=deps /usr/src/frontend/node_modules ./node_modules COPY svelte.config.js . COPY --from=builder /usr/src/frontend/.svelte-kit ./.svelte-kit EXPOSE 3000 CMD [ "yarn", "preview", "--host" ]