################### # BUILD FOR CI TESTING ################### FROM node:18-alpine3.16 # Create app directory WORKDIR /usr/src/app # A wildcard is used to ensure both package.json AND package-lock.json are copied COPY package*.json ./ # Install app dependencies RUN npm ci RUN npx prisma generate # Bundle app source COPY . . # Creates a "dist" folder RUN npm run build # Start the server using the production build CMD [ "node", "dist/main.js" ]