# node 22 (orval 은 node>=22.18 요구) + Debian slim(glibc) — alpine(musl)+esbuild 의 ETXTBSY 회피.
FROM node:22-slim

WORKDIR /app

# 의존성 먼저 설치 (레이어 캐시)
COPY package.json package-lock.json ./
RUN npm install

COPY . .

EXPOSE 3000

# vite dev — --host 0.0.0.0 로 컨테이너 외부 노출 (package.json scripts.dev)
CMD ["npm", "run", "dev"]
