FROM node:22-alpine AS build

WORKDIR /app

COPY package.json package-lock.json ./
RUN npm ci

COPY . .
RUN npm run build

FROM node:22-alpine

WORKDIR /app

RUN apk add --no-cache python3 py3-pip \
  && python3 -m pip install --no-cache-dir --break-system-packages tencentcloud-sdk-python

COPY --from=build /app/dist ./dist
COPY deploy ./deploy

EXPOSE 29200

ENV DEPLOY_API_PORT=29200

HEALTHCHECK --interval=10s --timeout=3s --retries=12 CMD wget -q -O - http://127.0.0.1:29200/deploy/api/health >/dev/null || exit 1

CMD ["node", "deploy/server.mjs"]
