FROM node:25.6.1-alpine AS deps RUN npm i -g pnpm WORKDIR /app COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json ./ COPY apps/processor/package.json ./apps/processor/package.json COPY packages/db/package.json ./packages/db/package.json COPY packages/logger/package.json ./packages/logger/package.json COPY packages/logic/package.json ./packages/logic/package.json COPY packages/objectstorage/package.json ./packages/objectstorage/package.json COPY packages/result/package.json ./packages/result/package.json COPY packages/settings/package.json ./packages/settings/package.json RUN pnpm install --frozen-lockfile FROM node:25.6.1-alpine AS production WORKDIR /app ENV NODE_ENV=production ENV HOST=0.0.0.0 ENV PORT=3000 RUN npm i -g pnpm COPY --from=deps /app/node_modules ./node_modules COPY apps/processor ./apps/processor COPY packages ./packages COPY package.json pnpm-workspace.yaml turbo.json ./ EXPOSE 3000 CMD ["pnpm", "--filter", "@apps/processor", "run", "prod"]