윈도우용 실행파일 커밋
This commit is contained in:
28
backend-node/Dockerfile.win
Normal file
28
backend-node/Dockerfile.win
Normal file
@@ -0,0 +1,28 @@
|
||||
# Windows 개발 환경 전용 Dockerfile (단순 개발 모드)
|
||||
FROM node:20-bookworm-slim
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# 필요한 패키지 설치 (wget 포함)
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends openssl ca-certificates wget \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# package.json 복사 및 의존성 설치
|
||||
COPY package*.json ./
|
||||
RUN npm ci
|
||||
|
||||
# 소스 코드 복사
|
||||
COPY . .
|
||||
|
||||
# Prisma 클라이언트 생성
|
||||
RUN npx prisma generate
|
||||
|
||||
# 개발 환경 설정
|
||||
ENV NODE_ENV=development
|
||||
|
||||
# 포트 노출
|
||||
EXPOSE 8080
|
||||
|
||||
# 개발 서버 시작 (nodemon 사용)
|
||||
CMD ["npm", "run", "dev"]
|
||||
@@ -103,7 +103,7 @@ export const getBatchTranslations = async (
|
||||
}
|
||||
|
||||
// 2. 모든 key_id를 추출
|
||||
const keyIds = langKeyMasters.map((master) => master.key_id);
|
||||
const keyIds = langKeyMasters.map((master: any) => master.key_id);
|
||||
|
||||
// 3. 요청된 언어와 한국어 번역을 한번에 조회
|
||||
const translations = await prisma.$queryRaw<any[]>`
|
||||
|
||||
@@ -5,7 +5,7 @@ services:
|
||||
backend:
|
||||
build:
|
||||
context: ./backend-node
|
||||
dockerfile: Dockerfile
|
||||
dockerfile: Dockerfile.win
|
||||
container_name: pms-backend-win
|
||||
ports:
|
||||
- "8080:8080"
|
||||
@@ -21,16 +21,18 @@ services:
|
||||
volumes:
|
||||
- ./backend-node:/app
|
||||
- /app/node_modules
|
||||
- /app/dist
|
||||
networks:
|
||||
- pms-network
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
|
||||
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/health", "||", "exit", "1"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 60s
|
||||
timeout: 15s
|
||||
retries: 5
|
||||
start_period: 90s
|
||||
|
||||
networks:
|
||||
pms-network:
|
||||
driver: bridge
|
||||
external: false
|
||||
|
||||
@@ -11,6 +11,7 @@ services:
|
||||
- "9771:3000"
|
||||
environment:
|
||||
- NEXT_PUBLIC_API_URL=http://localhost:8080/api
|
||||
- WATCHPACK_POLLING=true
|
||||
volumes:
|
||||
- ./frontend:/app
|
||||
- /app/node_modules
|
||||
@@ -18,8 +19,14 @@ services:
|
||||
networks:
|
||||
- pms-network
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000", "||", "exit", "1"]
|
||||
interval: 30s
|
||||
timeout: 15s
|
||||
retries: 3
|
||||
start_period: 60s
|
||||
|
||||
networks:
|
||||
pms-network:
|
||||
driver: bridge
|
||||
external: true
|
||||
external: false
|
||||
|
||||
@@ -60,3 +60,4 @@ volumes:
|
||||
networks:
|
||||
plm-network:
|
||||
driver: bridge
|
||||
external: false
|
||||
@@ -1,14 +1,19 @@
|
||||
@echo off
|
||||
|
||||
REM 스크립트가 있는 디렉토리로 이동
|
||||
cd /d "%~dp0"
|
||||
|
||||
echo =====================================
|
||||
echo PLM 솔루션 - Windows 시작
|
||||
echo =====================================
|
||||
|
||||
echo 기존 컨테이너 정리 중...
|
||||
docker-compose -f docker-compose.win.yml down 2>nul
|
||||
echo 기존 컨테이너 및 네트워크 정리 중...
|
||||
docker-compose -f docker-compose.win.yml down -v 2>nul
|
||||
docker network rm plm-network 2>nul
|
||||
|
||||
echo PLM 서비스 시작 중...
|
||||
docker-compose -f docker-compose.win.yml up --build --force-recreate -d
|
||||
docker-compose -f docker-compose.win.yml build --no-cache
|
||||
docker-compose -f docker-compose.win.yml up -d
|
||||
|
||||
if %errorlevel% equ 0 (
|
||||
echo.
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
@echo off
|
||||
chcp 65001 >nul
|
||||
|
||||
REM 스크립트가 있는 디렉토리로 이동
|
||||
cd /d "%~dp0"
|
||||
|
||||
echo ============================================
|
||||
echo PLM 솔루션 - 전체 서비스 시작 (분리형)
|
||||
echo ============================================
|
||||
@@ -14,9 +17,13 @@ echo ============================================
|
||||
echo 1. 백엔드 서비스 시작 중...
|
||||
echo ============================================
|
||||
|
||||
REM 기존 컨테이너 및 네트워크 정리
|
||||
docker-compose -f docker-compose.backend.win.yml down -v 2>nul
|
||||
docker-compose -f docker-compose.frontend.win.yml down -v 2>nul
|
||||
docker network rm pms-network 2>nul
|
||||
|
||||
REM 백엔드 빌드 및 시작
|
||||
docker-compose -f docker-compose.backend.win.yml build --no-cache
|
||||
docker-compose -f docker-compose.backend.win.yml down -v
|
||||
docker network create pms-network 2>nul || echo 네트워크가 이미 존재합니다.
|
||||
docker-compose -f docker-compose.backend.win.yml up -d
|
||||
|
||||
echo.
|
||||
@@ -29,8 +36,8 @@ echo ============================================
|
||||
echo 2. 프론트엔드 서비스 시작 중...
|
||||
echo ============================================
|
||||
|
||||
REM 프론트엔드 빌드 및 시작
|
||||
docker-compose -f docker-compose.frontend.win.yml build --no-cache
|
||||
docker-compose -f docker-compose.frontend.win.yml down -v
|
||||
docker-compose -f docker-compose.frontend.win.yml up -d
|
||||
|
||||
echo.
|
||||
|
||||
97
start-windows-simple.bat
Normal file
97
start-windows-simple.bat
Normal file
@@ -0,0 +1,97 @@
|
||||
@echo off
|
||||
chcp 65001 >nul
|
||||
|
||||
REM 스크립트가 있는 디렉토리로 이동
|
||||
cd /d "%~dp0"
|
||||
|
||||
echo ============================================
|
||||
echo PLM 솔루션 - 윈도우 간편 시작
|
||||
echo ============================================
|
||||
echo.
|
||||
|
||||
REM Docker Desktop 실행 확인
|
||||
echo 🔍 Docker Desktop 상태 확인 중...
|
||||
docker --version >nul 2>&1
|
||||
if %errorlevel% neq 0 (
|
||||
echo ❌ Docker Desktop이 실행되지 않았습니다!
|
||||
echo Docker Desktop을 먼저 실행해주세요.
|
||||
echo.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo ✅ Docker Desktop이 실행 중입니다.
|
||||
echo.
|
||||
|
||||
REM 기존 컨테이너 정리
|
||||
echo 🧹 기존 컨테이너 정리 중...
|
||||
docker-compose -f docker-compose.backend.win.yml down -v 2>nul
|
||||
docker-compose -f docker-compose.frontend.win.yml down -v 2>nul
|
||||
docker network rm pms-network 2>nul
|
||||
echo.
|
||||
|
||||
REM 백엔드 시작
|
||||
echo ============================================
|
||||
echo 🚀 1단계: 백엔드 서비스 시작 중...
|
||||
echo ============================================
|
||||
docker-compose -f docker-compose.backend.win.yml up -d --build
|
||||
|
||||
if %errorlevel% neq 0 (
|
||||
echo ❌ 백엔드 시작 실패!
|
||||
echo 로그를 확인하세요: docker-compose -f docker-compose.backend.win.yml logs
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo ✅ 백엔드 서비스 시작 완료
|
||||
echo ⏳ 백엔드 안정화 대기 중... (30초)
|
||||
timeout /t 30 /nobreak >nul
|
||||
|
||||
REM 프론트엔드 시작
|
||||
echo.
|
||||
echo ============================================
|
||||
echo 🎨 2단계: 프론트엔드 서비스 시작 중...
|
||||
echo ============================================
|
||||
docker-compose -f docker-compose.frontend.win.yml up -d --build
|
||||
|
||||
if %errorlevel% neq 0 (
|
||||
echo ❌ 프론트엔드 시작 실패!
|
||||
echo 로그를 확인하세요: docker-compose -f docker-compose.frontend.win.yml logs
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo ✅ 프론트엔드 서비스 시작 완료
|
||||
echo ⏳ 프론트엔드 안정화 대기 중... (15초)
|
||||
timeout /t 15 /nobreak >nul
|
||||
|
||||
echo.
|
||||
echo ============================================
|
||||
echo 🎉 PLM 솔루션이 성공적으로 시작되었습니다!
|
||||
echo ============================================
|
||||
echo.
|
||||
echo 📱 접속 정보:
|
||||
echo • 프론트엔드: http://localhost:9771
|
||||
echo • 백엔드 API: http://localhost:8080/api
|
||||
echo • 데이터베이스: 39.117.244.52:11132
|
||||
echo.
|
||||
echo 📊 서비스 상태 확인:
|
||||
echo docker-compose -f docker-compose.backend.win.yml ps
|
||||
echo docker-compose -f docker-compose.frontend.win.yml ps
|
||||
echo.
|
||||
echo 📋 로그 확인:
|
||||
echo 백엔드: docker-compose -f docker-compose.backend.win.yml logs -f
|
||||
echo 프론트엔드: docker-compose -f docker-compose.frontend.win.yml logs -f
|
||||
echo.
|
||||
echo 🛑 서비스 중지:
|
||||
echo stop-all-separated.bat 실행
|
||||
echo.
|
||||
|
||||
REM 브라우저 자동 열기
|
||||
echo 5초 후 브라우저에서 애플리케이션을 엽니다...
|
||||
timeout /t 5 /nobreak >nul
|
||||
start http://localhost:9771
|
||||
|
||||
echo.
|
||||
echo 애플리케이션이 준비되었습니다!
|
||||
pause
|
||||
47
test-backend-build.bat
Normal file
47
test-backend-build.bat
Normal file
@@ -0,0 +1,47 @@
|
||||
@echo off
|
||||
chcp 65001 >nul
|
||||
|
||||
REM 스크립트가 있는 디렉토리로 이동
|
||||
cd /d "%~dp0"
|
||||
|
||||
echo ============================================
|
||||
echo 백엔드 빌드 테스트 (Windows 전용)
|
||||
echo ============================================
|
||||
echo.
|
||||
|
||||
echo 🔍 기존 컨테이너 정리 중...
|
||||
docker-compose -f docker-compose.backend.win.yml down -v 2>nul
|
||||
|
||||
echo.
|
||||
echo 🚀 백엔드 빌드 시작...
|
||||
docker-compose -f docker-compose.backend.win.yml build --no-cache
|
||||
|
||||
if %errorlevel% equ 0 (
|
||||
echo.
|
||||
echo ✅ 백엔드 빌드 성공!
|
||||
echo.
|
||||
echo 🚀 백엔드 시작 중...
|
||||
docker-compose -f docker-compose.backend.win.yml up -d
|
||||
|
||||
if %errorlevel% equ 0 (
|
||||
echo ✅ 백엔드 시작 완료!
|
||||
echo.
|
||||
echo 📊 컨테이너 상태:
|
||||
docker-compose -f docker-compose.backend.win.yml ps
|
||||
echo.
|
||||
echo 📋 로그 확인:
|
||||
echo docker-compose -f docker-compose.backend.win.yml logs -f
|
||||
echo.
|
||||
echo 🌐 헬스체크:
|
||||
echo http://localhost:8080/health
|
||||
) else (
|
||||
echo ❌ 백엔드 시작 실패!
|
||||
echo 로그를 확인하세요: docker-compose -f docker-compose.backend.win.yml logs
|
||||
)
|
||||
) else (
|
||||
echo ❌ 백엔드 빌드 실패!
|
||||
echo 위의 오류 메시지를 확인하세요.
|
||||
)
|
||||
|
||||
echo.
|
||||
pause
|
||||
Reference in New Issue
Block a user