- frontend/Dockerfile: 멀티스테이지 (node 빌드 → serve로 dist 정적 서빙). 포트 5173은 그대로 유지해서 Caddy 설정 변경 불필요 - backend/Dockerfile: npm ci --omit=dev + npm start (node --watch 제거) - docker-compose.yml: volumes/모듈 마운트 제거, build 기반으로 변경, restart: unless-stopped, NODE_ENV=production 추가 - .dockerignore 양쪽 추가해서 이미지에 node_modules/.git 제외 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
15 lines
333 B
Docker
15 lines
333 B
Docker
# 빌드 단계
|
|
FROM node:22-alpine AS builder
|
|
WORKDIR /app
|
|
COPY package*.json ./
|
|
RUN npm ci --include=dev --legacy-peer-deps
|
|
COPY . .
|
|
RUN npm run build
|
|
|
|
# 정적 파일 서빙 단계
|
|
FROM node:22-alpine
|
|
WORKDIR /app
|
|
RUN npm install -g serve
|
|
COPY --from=builder /app/dist ./dist
|
|
EXPOSE 5173
|
|
CMD ["serve", "-s", "dist", "-l", "5173"]
|