FROM node:14 as builder RUN apt-get update && apt-get install -y curl yarn bash RUN curl -sfL https://install.goreleaser.com/github.com/tj/node-prune.sh | bash -s -- -b /usr/local/bin WORKDIR /usr/src/app # Cache deps COPY package.json yarn.lock ./ RUN yarn install --pure-lockfile # Build COPY generate_translations.js \ tsconfig.json \ webpack.config.js \ .babelrc \ ./ COPY lemmy-translations lemmy-translations COPY src src RUN yarn RUN yarn build:prod # Pruning # RUN npm prune --production RUN node-prune FROM node:14-alpine as runner COPY --from=builder /usr/src/app/dist /app/dist COPY --from=builder /usr/src/app/node_modules /app/node_modules EXPOSE 1234 WORKDIR /app CMD node dist/js/server.js