아래 명령으로 헬름 패키지를 생성한다.

helm create <헬름 패키지명>

현재 경로에 <헬름 패키지명> 으로 디렉토리가 생성되며, 그 하위로 아래와같은 구조의 파일 트리가 생성된다. 아래는 helm create my-chart 를 실행한 결과이다.

my-chart/
├── .helmignore 
├── Chart.yaml
├── values.yaml
├── charts/
└── templates/
    ├── NOTES.txt
    ├── _helpers.tpl
    ├── deployment.yaml
    ├── hpa.yaml
    ├── ingress.yaml
    ├── service.yaml
    ├── serviceaccount.yaml
    └── tests/

각각의 파일/디렉토리의 용도는 아래와 같다.

파일/디렉토리명 용도 예시
.helmignore 렌더링(헬름이 배포 가능한 매니페스트를 만드는 과정)시 제외할 파일/디렉토리 지정 배포하지 않을 참고용 샘플 yaml 파일
Chart.yaml 차트 기본정보 선언 패키지의 이름, 버전, 설명 및 API 버전 등 메타데이터를 정의
values.yaml 배포될 yaml 파일에 들어갈 변수 기본값 선언. 환경별 배포 설정시 사용. templates/service.yaml 의 {profile} 부분에 들어갈 값
charts/ main app 과 함께 배포되어야 하는 sub app 폴더. 즉, main app 이 의존하고 있는 다른 app 들의 패키지를 지정. my-chart 앱 배포시 함께 배포되어야 하는 앱을 지정
templates/ . main app 폴더  
NOTES.txt 배포 후 표시될 안내문구  
_helpers.tpl 사용자 정의 전역변수 선언(helper 함수 형태)  
리소스 매니페스트 파일들 main app 리소스 매니페스트 템플릿들. values.yaml 에서 주입받은 값으로 최종 매니페스트가 렌더링됨.  
tests/ main app 배포 후 통신상태 확인을 위한 pod 템플릿 디렉토리  

 

블로그 이미지

망원동똑똑이

프로그래밍 지식을 자유롭게 모아두는 곳입니다.

,