# Use the official Node.js 18 base image | |
FROM node:18-slim | |
# Set the working directory inside the container | |
WORKDIR /usr/src/app | |
# Copy the package.json and package-lock.json if available | |
COPY package*.json ./ | |
# Install the app dependencies | |
RUN npm install --production | |
# Copy the rest of the application code to the container | |
COPY . . | |
# Set environment variable to production | |
ENV NODE_ENV=production | |
# Expose the port Hugging Face Spaces will bind to | |
EXPOSE 3000 | |
# Command to start the app | |
CMD ["node", "index.js"] |