배포
KPIS DSR API 배포 가이드입니다.
아키텍처
| 컴포넌트 | 호스팅 | 이유 |
|---|---|---|
| 프론트엔드 (React 19 + Vite) | Vercel | 자동 배포, CDN |
| API 서버 (Express 5) | Oracle Cloud (PM2) | KPIS IP 화이트리스트 요구 |
KPIS API는 등록 요청(MA111~MA114) 시 특정 IP에서만 호출을 허용합니다. 따라서 API 서버는 고정 IP를 가진 Oracle Cloud에서 운영합니다.
프론트엔드 배포 (Vercel)
main 브랜치에 푸시 시 Vercel이 자동 빌드 및 배포합니다.
API 서버 배포 (Oracle Cloud)
# SSH 접속
ssh user@oracle-server-ip
# 업데이트
cd /path/to/kpis-dsr-api
git pull origin main
npm install --production
# PM2 재시작
pm2 restart kpis-dsr-api
pm2 status
pm2 logs kpis-dsr-api --lines 20
환경 변수
| 변수 | 설명 | 위치 |
|---|---|---|
GOOGLE_CLIENT_ID | Google OAuth 클라이언트 ID | 프론트/서버 |
GOOGLE_CLIENT_SECRET | Google OAuth 시크릿 | 서버 전용 |
KPIS_API_KEY | KPIS 조회 API 키 | 서버 전용 |
KPIS_JWT_SECRET | KPIS 등록 JWT | 서버 전용 |
DATABASE_PATH | SQLite DB 파일 경로 | 서버 전용 |
공동인증서 관리
KPIS 등록 API(MA111~MA114)는 공동인증서가 필요합니다.
- 인증서 업로드 시 만료일 자동 파싱
- 만료 임박 시 알림: D-30, D-7, D-1
- 인증서 만료 = 서비스 즉시 중단 → 사전 갱신 필수
Last updated on