From c83282797c20417eeaeebc11a3641241b85e5bc3 Mon Sep 17 00:00:00 2001 From: tindevil Date: Sun, 21 Dec 2025 08:37:42 +0000 Subject: [PATCH 1/2] Add Dockerfile --- Dockerfile | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..7897ee8 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,26 @@ +# 1단계: 빌드 (Node.js 버전은 로그에 맞춰 20 이상 권장) +FROM node:20-alpine AS build +WORKDIR /app +COPY package*.json ./ +RUN npm install +COPY . . +# Vite 빌드 실행 (vite.config.ts의 base 설정이 적용됨) +RUN npm run build + +# 2단계: 실행 (Nginx) +FROM nginx:stable-alpine +# 빌드된 dist 폴더를 Nginx의 웹 루트로 복사 +COPY --from=build /app/dist /usr/share/nginx/html + +# SPA 라우팅을 위한 Nginx 설정 (하위 경로 인식용) +RUN echo 'server { \ + listen 80; \ + location / { \ + root /usr/share/nginx/html; \ + index index.html; \ + try_files $uri $uri/ /index.html; \ + } \ +}' > /etc/nginx/conf.d/default.conf + +EXPOSE 80 +CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file From 345eb5efcd41f17b6a8a624ae6d610f20f14d911 Mon Sep 17 00:00:00 2001 From: tindevil Date: Sun, 21 Dec 2025 08:41:52 +0000 Subject: [PATCH 2/2] Update vite.config.ts --- vite.config.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/vite.config.ts b/vite.config.ts index ee5fb8d..6641e2f 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -5,6 +5,7 @@ import react from '@vitejs/plugin-react'; export default defineConfig(({ mode }) => { const env = loadEnv(mode, '.', ''); return { + base: '/agv/', server: { port: 3000, host: '0.0.0.0',