피드로 돌아가기
Dev.toDevOps
원문 읽기
Container-less VPS 배포 최적화로 인프라 복잡도 제거 및 개발 경험 일원화
Shipping Web Apps to a VPS Should Be This Simple
AI 요약
Context
소규모 Web App 배포 시 Docker 및 Kubernetes의 과도한 추상화로 인한 인프라 설정 오버헤드 발생. 특히 Local 환경과 Production 간의 Domain/HTTPS 불일치로 인한 OAuth 및 Cookie 설정 오류 빈번.
Technical Solution
- Local Build 후 SSH/SFTP를 통한 바이너리 직접 전송으로 Container Registry 및 Image Push 단계 제거
- Proxy-based Routing 구조를 통한 Zero-downtime Rolling Deploy 구현 및 새로운 인스턴스 헬스 체크 후 트래픽 전환
- App-level SDK(tako.sh) 도입을 통해 런타임 포트 바인딩 정보를 Proxy에 보고하는 Dynamic Port Mapping 설계
- .test 도메인 기반 Local Proxy 제공으로 Production과 동일한 HTTPS/DNS 환경을 구현하여 환경 간 격차 해소
- Scale-to-zero 옵션을 통한 저트래픽 앱의 리소스 효율 최적화
실천 포인트
1. OS 수준의 엄격한 Isolation이 불필요한 단순 Web App인지 검토하여 Container 도입 비용 평가
2. Local 개발 환경에 DNS/HTTPS Proxy를 적용해 Production과의 환경 일관성 확보
3. 인프라 복잡도를 낮추기 위해 Build-Package-Upload-Start로 이어지는 단순 Pipeline 가능 여부 확인
태그