# Backend Development Dockerfile for Placebo.mk NestJS API FROM node:20-alpine WORKDIR /app # Install build dependencies for native modules RUN apk add --no-cache python3 make g++ # Install dependencies with better error handling COPY package*.json ./ COPY package-lock.json* ./ # Clear npm cache and install dependencies RUN npm cache clean --force && \ npm install # Copy source code COPY . . # Fix permissions - use node user that exists in base image RUN chown -R node:node /app # Switch to non-root user that exists in base image USER node # Expose port EXPOSE 3000 # Start development server CMD ["npm", "run", "start:dev"]