# Use an official Node.js runtime as a parent image FROM node:22-alpine # Set the working directory WORKDIR /app # Copy package.json and package-lock.json COPY backend/package*.json ./ # Install dependencies RUN npm install # Copy the rest of the application code COPY backend/ . # Build the application RUN npm run build COPY backend/entrypoint.sh ./entrypoint.sh RUN chmod +x ./entrypoint.sh # Expose the port that the app will run on EXPOSE 3000 # Command to run the application ENTRYPOINT ["./entrypoint.sh"] CMD ["npm", "run", "start:prod"]