diff --git a/docs/plan.md b/docs/plan.md index e5dc63d..6501332 100644 --- a/docs/plan.md +++ b/docs/plan.md @@ -176,12 +176,12 @@ CREATE TABLE tracking_events ( - 상태 변경 시 로그 기록 - [ ] 알림 서비스 (보류 — 추후 앱 버전에서 푸시 알림으로 구현 예정) -### 4단계: Docker 배포 +### 4단계: Docker 배포 ✅ -- [ ] Frontend Dockerfile (node:20-alpine, 개발모드) -- [ ] Backend Dockerfile (node:20-alpine, 개발모드) -- [ ] `docker compose up -d --build` 로 실행 확인 -- [ ] Caddy 리버스 프록시 설정 확인 +- [x] 프론트엔드+백엔드 단일 컨테이너로 통합 (Dockerfile) +- [x] 프론트엔드 빌드 → Fastify 정적 파일 서빙 + SPA fallback +- [x] `docker compose up -d --build` 로 배포 모드 실행 확인 +- [x] Caddy 리버스 프록시 설정 (traeon:80) ## delivery-tracker 셀프호스팅 연동 @@ -190,16 +190,21 @@ delivery-tracker는 GraphQL API를 제공한다. Backend에서 GraphQL 쿼리로 ```graphql query Track($carrierId: ID!, $trackingNumber: String!) { track(carrierId: $carrierId, trackingNumber: $trackingNumber) { + trackingNumber + sender { name } + recipient { name } lastEvent { - time { datetime } status { code name } + time + location { name } description } - events { + events(last: 100) { edges { node { - time { datetime } status { code name } + time + location { name } description } } @@ -226,4 +231,9 @@ query Track($carrierId: ID!, $trackingNumber: String!) { 2. `docker compose logs -f` 로 에러 확인 3. 브라우저에서 `traeon.caadiq.co.kr` 접속, 운송장 등록/조회 테스트 4. cron 자동갱신 로그 확인 -5. 알림 Webhook 수신 테스트 + +## 추후 계획 + +- 알림 서비스 (앱 버전에서 푸시 알림으로 구현 예정) +- 다크모드 +- PWA 적용 (모바일 홈 화면 추가)