# 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"] |