프로덕션 배포 전략 선택

상태

승인

후보군

방안설명
Docker Compose + SSH기존 docker-compose.yml 확장. SSH로 프로덕션 서버 접근 후 docker-compose pull & up
Railway / RenderSaaS형 배포 플랫폼. 코드 푸시 시 자동 배포
Kubernetes (K8s)컨테이너 오케스트레이션. 자가 치유·스케일링 지원
GitHub Pages정적 사이트 호스팅

결정

Docker Compose + SSH 배포

결정 이유

  • 기존 docker-compose.yml이 MySQL을 관리 중 — 동일 패턴으로 백엔드·프론트엔드 추가가 자연스러움
  • 별도 클라우드 비용 없음 (VPS 또는 개인 서버 활용)
  • GitHub Actions에서 appleboy/ssh-action으로 SSH 배포를 3줄로 구현 가능
  • 이미지 버전 태그(SHA)로 즉각적인 롤백 가능

검토 대안

방안기각 이유
Railway / Render무료 플랜 슬립 모드·메모리 512MB 제약. vendor lock-in 우려
Kubernetes개인 프로젝트에 오버스펙. 클러스터 관리 비용이 과도함
GitHub Pages정적 사이트만 가능. Spring Boot 배포 불가

트레이드 오프

  • 득: 추가 비용 없음, 기존 docker-compose 패턴 재사용, 즉각 롤백 가능
  • 실: 서버(VPS) 준비 및 GitHub Secrets 설정 필요. K8s 대비 자가 치유 없음 — 서버 장애 시 수동 복구