프로덕션 배포 전략 선택
상태
승인
후보군
| 방안 | 설명 |
|---|---|
| Docker Compose + SSH | 기존 docker-compose.yml 확장. SSH로 프로덕션 서버 접근 후 docker-compose pull & up |
| Railway / Render | SaaS형 배포 플랫폼. 코드 푸시 시 자동 배포 |
| 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 대비 자가 치유 없음 — 서버 장애 시 수동 복구