FROM node:22-slim RUN apt-get update -y && apt-get install -y openssl RUN npm install -g pnpm@10.10.0 WORKDIR /app COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json .npmrc ./ COPY apps/web/package.json ./apps/web/ COPY apps/backend/package.json ./apps/backend/ COPY packages/eslint-config/package.json ./packages/eslint-config/ COPY packages/typescript-config/package.json ./packages/typescript-config/ COPY packages/ui/package.json ./packages/ui/ RUN pnpm install --frozen-lockfile COPY . . WORKDIR /app/apps/backend RUN pnpm run generate RUN pnpm run build ENV NODE_ENV=production WORKDIR /app/apps/web RUN pnpm run build EXPOSE 5000 WORKDIR /app/apps/backend ENTRYPOINT ["./entrypoint.sh"]