# ── 빌드 스테이지 ────────────────────────────────────────── FROM node:22-alpine AS builder WORKDIR /app # 의존성 설치 (캐시 활용) COPY package.json package-lock.json ./ RUN npm ci # 소스 복사 및 빌드 COPY . . RUN npm run build # ── 실행 스테이지 ────────────────────────────────────────── FROM caddy:alpine # Caddyfile 복사 COPY Caddyfile /etc/caddy/Caddyfile # 빌드 결과물 복사 COPY --from=builder /app/build /srv EXPOSE 80