3-s / Dockerfile
sameernotes's picture
Update Dockerfile
77226e7 verified
raw
history blame contribute delete
781 Bytes
# for deploying a Next.js application in a Docker container
# Use Node 22 as the base image
FROM node:22-alpine
# Set the working directory inside the container
WORKDIR /app
# Copy package.json and package-lock.json
COPY package*.json ./
# Install dependencies
RUN npm install
# Copy the rest of the application code
COPY . .
# Expose the port your app runs on
EXPOSE 7860
# --- FIX IS HERE ---
# Build the application. This runs during the `docker build` command.
RUN npm run build
# Change ownership of /app to the node user
# Do this *after* all root operations (like npm install/build) are done
RUN chown -R node:node /app
# Switch to a non-root user for better security
USER node
# Command to run the application when the container starts
CMD ["npm", "run", "start"]