# Use official Node.js runtime as base image FROM node:18-alpine # Set working directory in container WORKDIR /app # Copy package.json and package-lock.json (if available) COPY package*.json ./ # Install dependencies RUN npm ci --only=production # Copy application code COPY . . # Create non-root user for security RUN addgroup -g 1001 -S nodejs RUN adduser -S nextjs -u 1001 # Change ownership of the app directory RUN chown -R nextjs:nodejs /app USER nextjs # Expose port (adjust if your app uses different port) EXPOSE 9898 # Command to run the application CMD ["node", "index.js"]