FROM node:18-alpine as builder # Create app directory WORKDIR /app # Install app dependencies COPY package*.json ./ RUN npm ci COPY . . RUN npm run build FROM node:18-alpine ENV NODE_ENV production USER node # Create app directory WORKDIR /app # Install app dependencies COPY package*.json ./ # COPY .env ./ RUN npm ci --production COPY --from=builder /app/dist ./dist # COPY entrypoint.sh /usr/local/bin/entrypoint.sh # RUN chmod u+x /usr/local/bin/entrypoint.sh # ENTRYPOINT ["/usr/local/bin/entrypoint.sh"] CMD [ "node", "dist/app.js" ]