FROM node:22-slim # Install pnpm and build tools required for native modules (sharp, bcrypt). RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates \ python3 \ make \ g++ \ && rm -rf /var/lib/apt/lists/* \ && corepack enable && corepack prepare pnpm@10.26.0 --activate WORKDIR /app # Install dependencies first to leverage Docker layer caching. COPY package.json pnpm-lock.yaml ./ RUN pnpm install --frozen-lockfile --prod # Copy application code. COPY config ./config COPY moleculer.config.js ./ COPY services ./services EXPOSE 3003 CMD ["pnpm", "start"]