How DHH Solved Deploying to Production (with open source)
- Kamal은 오픈 소스 배포 도구로, 유료 서비스 없이 프로덕션 환경을 구축할 수 있게 해줍니다. 🚀
- Kubernetes나 Docker Swarm보다 설정이 간단하며, Ubuntu 서버와 SSH 접근만 있으면 됩니다. 🔑
- 여러 클라우드 제공자나 Raspberry Pi에도 배포할 수 있어 유연성이 높습니다. ☁️
- Kamal은 Ruby로 작성되었으며, Docker Hub에 이미지를 빌드하고 푸시하는 기능을 제공합니다. 💎
- Let's Encrypt를 사용하여 SSL 인증서를 자동으로 생성하고 설치하여 관리 부담을 줄여줍니다. 🛡️
- 액세서리(데이터베이스, 캐시 인스턴스 등)를 통해 애플리케이션과 지원 시스템을 분리하여 관리합니다. 🧰
- 배포 과정에서 훅을 사용하여 특정 단계 전후에 스크립트를 실행할 수 있습니다. ⚙️
- Kamal은 롤링 업데이트를 지원하여 서비스 중단 없이 새로운 버전을 배포할 수 있습니다. 🔄