FROM node:22-alpine # Set working directory WORKDIR /app # Install dependencies COPY package*.json ./ RUN npm ci # Copy source code COPY . . # Create a non-root user RUN addgroup -S appgroup && adduser -S appuser -G appgroup RUN chown -R appuser:appgroup /app # Switch to non-root user USER appuser # Expose port EXPOSE 3000 # Start development server with hot reloading CMD ["npm", "run", "dev"]