docs: 계획서 최종 업데이트

- 4단계 배포 모드 완료 표시
- GraphQL 쿼리 예시 실제 사용 중인 쿼리로 업데이트
- 추후 계획 섹션 추가

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
caadiq 2026-03-24 21:16:47 +09:00
parent f2070aa8ba
commit 18c4669679

View file

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