ADR-004 롤백 전략 = 이미지 태그 핀 + 이전 태그 재배포

상태

채택 (2026-07-03)

맥락

prod 배포 실패 또는 배포 후 이상 감지 시 직전 정상 버전으로 5분 내 복구해야 한다(FR-8, NFR). 본 과제는 DB 스키마 변경 0.

결정

  • prod backend는 커밋 SHA 태그 이미지로 배포(sports-backend:<sha>). .env.prodDOCKER_TAG가 현재 버전을 가리킴.
  • 롤백 = scripts/rollback.sh prod <previous_sha>DOCKER_TAG 치환 → docker compose up -d → health 폴링(5분).
  • deploy-prod.ymlworkflow_dispatch 입력 image_tag로 수동 롤백 트리거.

대안과 미채택 사유

  • DB 스냅샷 포함 롤백: 스키마 변경 0이라 데이터 롤백 불필요. 과함.
  • Blue-Green 전환 롤백: PRD Non-Goal. 단일 호스트·개인 규모에 과함(Open Questions, ⑦ 이후 재검토).

결과

  • 단순·재현 가능한 5분 내 복구. 이전 태그가 레지스트리/로컬에 남아 있으면 즉시 재배포.
  • 스키마 무변경 전제라 앱 이미지 교체만으로 완결.