| # Use an official Node.js runtime as the base image | |
| FROM node:18-alpine | |
| # Set the working directory inside the container | |
| WORKDIR /usr/src/app | |
| # Copy package.json and package-lock.json (if available) | |
| COPY package*.json ./ | |
| # Install app dependencies | |
| RUN npm install --production | |
| # Copy the rest of the application code | |
| COPY . . | |
| # Expose the port the app runs on | |
| EXPOSE 3000 | |
| # Define the default command to run the app | |
| CMD ["npm", "start"] |