본문으로 건너뛰기
버전: 3.22.0

일반적인 관례

이 부분은 모범사례 가이드의 일부로서 일반적인 관례를 설명한다.

차트 이름​

차트 이름은 소문자와 숫자여야 한다. 단어는 대시(-)로 구분할 수 있다.

예시:

drupal
nginx-lego
aws-cluster-autoscaler

대문자나 밑줄문자는 차트 이름에 사용할 수 없다. 점도 사용할 수 없다.

버전 번호​

가능하다면 어디서든, 헬름은 버전 번호를 표현할 때 SemVer 2를 사용한다. (도커 이미지 태그는 SemVer를 따를 필요가 없고 아쉽지만 규칙에서 예외로 취급된다는 점을 알아두자.)

SemVer 버전을 쿠버네티스 레이블로 저장할 때, 관례적으로 + 문자를 _ 문자로 변경하는데, + 기호는 레이블 값으로 허용되지 않기 때문이다.

YAML 형식​

YAML 파일은 2칸 (탭이 아니다) 들여쓰기해야 한다.

헬름과 차트 단어의 사용​

Helm 과 helm 단어 사용에 관한 관례는 다음과 같다.

  • Helm(헬름)은 전체 프로젝트를 가리킨다.
  • helm은 클라이언트측 명령어를 가리킨다.
  • chart는 첫글자를 대문자로 쓸 필요가 없는데, 고유명사가 아니기 때문이다.
  • 반면, Chart.yaml는 첫글자를 대문자로 써야 하는데, 파일명에는 대소문자 구분이 있기 때문이다.

애매할 때는 Helm(대문자 'H', 헬름)을 쓰자.

차트 템플릿과 네임스페이스​

차트 템플릿의 metadata 섹션에 namespace 속성을 정의하는 것은 피하자. 렌더링된 템플릿에 적용할 네임스페이스는 --namespace와 같은 플래그를 통해 쿠버네티스 클라이언트를 호출할 때 지정해야 한다. Helm은 템플릿을 있는 그대로 렌더링하여 쿠버네티스 클라이언트에 전달하는데, 이 클라이언트는 Helm 자체일 수도 있고 다른 프로그램(kubectl, flux, spinnaker 등)일 수도 있다.