Devops/Harbor

[Harbor] Harbor에 Helm Chart 올리기

dev_ss 2024. 11. 15. 15:29

 

 

 


 

사내 개발 시 많은 회사들이 Image Registry로 ECR이나 Harbor 또는 Nexus를 많이 사용한다.

 

Harbor는 컨테이너 이미지뿐만 아니라 Helm Repository로도 사용할 수 있다.

 

이번 글에는 해당 과정을 알아볼 것이다.

 


Helm Chart 제작

 

간단하게 프로젝트를 만들고, 이를 tgz파일로 패키징 하는 작업을 할 것이다.

 

# helm 차트의 새 프로젝트 생성
helm create test

 

 

 

위 명령어를 실행하면 test라는 디렉터리가 생기고, 내부에는 아래 사진과 같은 구조로 생성된다.

 

 

 

 

test라는 디렉토리로 이동해서 아래의 명령어를 실행하면 존재하는 파일을 압축하여 tgz파일로 패키징 해준다.

# test 디렉토리로 이동
cd test

# helm 차트 패키징
helm package .

 

 

 

 

사진으로 보는 것처럼 생성된 test-0.1.0.tgz 파일은 harbor로 push 되는 실제 Helm의 차트 파일이다.

 


Harbor Project 생성

 

구축한 하버에서 프로젝트를 생성해 준다.

 

 

 

※ 과거에는 Repository의 용도를 컨테이너 이미지나 헬름 차트로 지정하는 설정이 있었으나, 현재는 따로 존재하지 않고 컨테이너 이미지나 헬름 차트를 둘 다 올릴 수 있다.

 

 


Helm Login 및 Push

 

프로젝트를 생성했으면, CLI에서 해당 Harbor Registry로 로그인하고, 생성된 헬름 차트 파일(tgz)을 Push 하면 끝이다.

 

 

로그인을 할 때에는, Harbor에 존재하는 계정으로 로그인하면 된다.

 

# Registry에 login
helm registry login <Harbor Registry 도메인>

# Http 사용 또는 Self-Signed TLS 이용 시
helm registry login <Harbor Registry 도메인> --insecure

 

 

Username과 Password를 입력하고 로그인이 성공하면, 아래와 같이 출력된다.

 

 

 

 

 

이 다음은 헬름 차트를 Registry로 Push해주는 것이다.

# Harbor로 헬름 차트를 push
helm push test-0.1.0.tgz oci://<Harbor Registry 도메인>/test

# Http 사용 또는 Self-Signed TLS 이용 시
helm push test-0.1.0.tgz oci://<Harbor Registry 도메인>/test --insecure-skip-tls-verify

 

 

 

성공적으로 차트가 Push 되면, 하버에서 올라간 차트를 확인할 수 있다.

 

 

 

 

 

 

아래처럼 세부 내용도 확인할 수 있다.

 

 

 

 

 


 

 

 

 

반응형