# syntax=docker/dockerfile:1.7
ARG NODE_VERSION=22.23.2-alpine3.24
FROM node:${NODE_VERSION} AS build
RUN apk add --no-cache openssl libc6-compat
RUN corepack enable && corepack prepare pnpm@10.13.1 --activate
WORKDIR /app
COPY . .
RUN pnpm install --frozen-lockfile
RUN pnpm --filter './packages/*' build
RUN HOST_DATABASE_URL='postgresql://unused:unused@localhost/unused?schema=host' pnpm --filter @pac/host-service prisma:generate
RUN pnpm --filter @pac/host-service build
FROM node:${NODE_VERSION}
RUN apk add --no-cache openssl libc6-compat
WORKDIR /app
COPY --from=build /app/node_modules ./node_modules
COPY --from=build /app/packages ./packages
COPY --from=build /app/apps/host-service ./apps/host-service
WORKDIR /app/apps/host-service
ENV NODE_ENV=production HOST_SERVICE_BIND=0.0.0.0
EXPOSE 3105
CMD ["node", "dist/main.js"]
