GitHub Pages를 활용한 Helm 패키지 배포 및 설치
[Kubernetes] Helm을 이용한 Kubernetes 애플리케이션 배포 및 관리
이전 글에 이어서, Helm 차트를 GitHub 레포지토리에 저장하고, 이를 GitHub Pages를 통해 배포하여 다른 사용자들이 쉽게 다운로드하고 설치할 수 있도록 하는 실습을 진행했다.
먼저, 깃허브 레포지토리와 배포할 데이터를 가진 디렉터리를 동기화해야 한다.
1) github 레포지토리 생성 및 연결
README.md 파일이 있는 상태로 깃허브 레포지토리를 생성한다.
로컬에서 clone 받기
git clone https://github.com/bestlalala/webping.git
브랜치 변경
release 브랜치를 생성하여 이동
git checkout -b release
2) README.md 파일 수정 후 업로드
여기서부터는 우분투 터미널에서 진행한다.
README.md 수정
nano READMD.md
README.md 파일을 수정 후, add & commit한다.
여기서 사용자 이름과 이메일이 호스트 이름으로 자동으로 설정되었다고 나온다. 설정을 변경하기 위해 다음 명령어를 이용한다.
git config --global --edit
그러면 다음과 같은 파일이 열리는데, 주석을 해제하고 name과 email을 깃허브 아이디와 이메일로 설정해주면 된다.
파일 수정 후 저장한다.
그리고 다시 푸시한다.
깃허브 레포지토리 확인
release 브랜치에 제대로 올라간 것을 확인할 수 있다.
3) github 레포지토리를 웹 사이트로 변경
github 레포지토리에서 [Settings]-[Pages]를 선택한 후 branch 부분에서 원하는 브랜치를 선택하고 save를 클릭
확인
url을 쳐서 제대로 접속이 되는지 확인한다.
release 브랜치를 배포하도록 설정했기 때문에, main이 아닌 release 브랜치의 내용이 나타나는 것을 볼 수 있다.
https://{username}.github.io/{repositoryname}/
4) 예제파일 다운로드
교재의 예제 파일을 다운로드받는다.
tree 설치 및 파일 구조 확인
tree를 통해 파일 구조를 좀 더 시각적으로 확인할 수 있다.
sudo apt install tree
web-ping 디렉터리의 파일 구조를 살펴본다.
tree /home/unbuntu/kiamol/ch10/web-ping
5) 배포할 디렉터리를 복사
webping 디렉터리에, 배포할 디렉터리(예제파일)를 복사한다.
cp -r /home/ubuntu/kiamol/ch10/web-ping /home/ubuntu/webping
압축 파일 생성
helm package 디렉터리/
6) 파일 생성 및 구조 확인
index.yaml 파일 생성
helm repo index .
구조 확인
7) 푸시(push) 수행
git add .
git commit -m "chart init"
git push
깃허브 레포지토리에 들어가보면, 제대로 푸시된 것을 확인할 수 있다.
8) helm에 레포지토리 등록
helm repo add {REPO_NAME} https://{USER_NAME}.github.io/{REPO_NAME}/
설치
helm install webping webping/web-ping
이 실습을 통해 Helm 차트를 GitHub에 배포하고, Kubernetes 환경에 쉽게 애플리케이션을 설치하는 방법을 배울 수 있었다.