Python과 Node.js로 샘플 애플리케이션을 구축한 후 가상 머신, 컨테이너, 최종적으로 쿠버네티스를 통해 배포하는 방법을 살펴보세요. 각 장은 이전 내용을 기반으로 구성되어 있으며, GitHub Actions 및 CI/CD 관행을 활용해 다양한 배포 환경 간에 빠르게 이동할 수 있는 포터블 애플리케이션을 만드는 방법을 배우게 됩니다. 다양한 배포 방법을 탐구하는 과정에서, 어떤 언어나 스택에도 적용할 수 있는 모범 사례를 확인하게 될 것입니다.
주요 내용은 다음과 같습니다.
- 자체 호스팅 또는 클라우드 플랫폼에서 Git 저장소 관리
- Git을 사용해 클라우드 기반 VM을 통해 Python 및 Node.js 애플리케이션 배포
- Ansible을 사용해 VM 설정 및 배포 자동화
- Docker 및 Docker Compose를 사용해 애플리케이션 컨테이너화 및 배포
- 오케스트레이션 없이 VM에서 컨테이너 직접 실행
- Docker Hub 레지스트리를 사용해 컨테이너 푸시 및 호스팅
- 쿠버네티스에서 컨테이너화된 애플리케이션 배포
- 쿠버네티스에서 퍼블릭 및 프라이빗 애플리케이션 구축
- HTTP 및 HTTPS 트래픽을 위한 부하 분산기 설정
- GitHub Actions 및 Nectos의 오픈소스 대안 Act를 활용한 CI/CD 기술 활용