FROM node:20-alpine AS builder RUN apk add --no-cache git WORKDIR /app COPY package*.json ./ RUN npm ci COPY tsconfig.json ./ COPY src/ ./src/ RUN npx tsc FROM node:20-alpine RUN apk add --no-cache docker-cli docker-cli-compose git rsync WORKDIR /app COPY package*.json ./ RUN npm ci --production COPY --from=builder /app/dist/ ./dist/ EXPOSE 7443 CMD ["node", "dist/server.js"]