@@ -5,12 +5,12 @@ sidebar_position: 6
55---
66
77이 섹션에서는 Helm 차트 저장소를 만들고 작업하는 방법을 설명한다.
8- 고수준에서 차트 저장소는 패키지형 차트를 저장하고
8+ 고수준에서 차트 저장소는 패키지형 차트를 저장하고
99공유할 수 있는 장소다.
1010
11- 공식 차트 저장소는 [ 쿠버네티스 차트] ( https://github.com/helm/charts ) 가
12- 관리하고 있으며 참여를 환영한다. 하지만 헬름도 자신만의 차트 저장소를
13- 쉽게 만들고 운영할 수 있게 해준다. 이 가이드에서는
11+ 공식 차트 저장소는 [ 쿠버네티스 차트] ( https://github.com/helm/charts ) 가
12+ 관리하고 있으며 참여를 환영한다. 하지만 헬름도 자신만의 차트 저장소를
13+ 쉽게 만들고 운영할 수 있게 해준다. 이 가이드에서는
1414그렇게 하는 방법을 설명한다.
1515
1616## 전제 조건
@@ -20,17 +20,17 @@ sidebar_position: 6
2020
2121## 차트 저장소 생성
2222
23- _ 차트 저장소_ 는 ` index.yaml ` 파일과 패키지화된 차트를
24- 저장하는 HTTP 서버다. 차트를 공유할 준비가 되면
23+ _ 차트 저장소_ 는 ` index.yaml ` 파일과 패키지화된 차트를
24+ 저장하는 HTTP 서버다. 차트를 공유할 준비가 되면
2525차트 저장소에 업로드하는 것이 가장 선호되는 방법이다.
2626
2727** 참고:** Helm 2.0.0의 경우 차트 저장소는 고유한 인증 방법이 없다.
28- GitHub에 [ 이슈 트래킹
28+ GitHub에 [ 이슈 트래킹
2929프로세스] ( https://github.com/helm/helm/issues/1038 ) 가 있다.
3030
31- 차트 저장소는 YAML과 tar 파일을 서비스할 수 있고
32- GET 요청에 응답할 수 있는 모든 HTTP 서버가 될 수 있기 때문에,
33- 자신만의 차트 저장소를 호스팅하는 것에 관한 한 수많은 옵션이 있다.
31+ 차트 저장소는 YAML과 tar 파일을 서비스할 수 있고
32+ GET 요청에 응답할 수 있는 모든 HTTP 서버가 될 수 있기 때문에,
33+ 자신만의 차트 저장소를 호스팅하는 것에 관한 한 수많은 옵션이 있다.
3434예를 들어 GCS(구글 클라우드 스토리지) 버킷, Amazon S3 버킷, GitHub Pages를
3535사용하거나 직접 웹 서버를 만들 수도 있다.
3636
@@ -41,7 +41,7 @@ GET 요청에 응답할 수 있는 모든 HTTP 서버가 될 수 있기 때문
4141[ 출처 파일] ( /topics/provenance.md ) 처럼 동일한 서버에서
4242호스팅된다.
4343
44- 예를 들어, 저장소 ` https://example.com/charts ` 의 레이아웃은
44+ 예를 들어, 저장소 ` https://example.com/charts ` 의 레이아웃은
4545다음과 같을 수 있다:
4646
4747```
@@ -55,19 +55,19 @@ charts/
5555```
5656
5757이 경우에는 인덱스 파일에 하나의 차트, 즉 알파인 차트에 대한 정보가 포함되며,
58- 해당 차트에 대한 다운로드 URL
58+ 해당 차트에 대한 다운로드 URL
5959` https://example.com/charts/alpine-0.1.2.tgz ` 을 제공한다.
6060
6161차트 패키지가 ` index.yaml ` 파일과 동일한 서버에 위치할 필요는 없다.
6262하지만 그렇게 하는 것이 종종 가장 쉽다.
6363
6464### 인덱스 파일
6565
66- 인덱스 파일은 ` index.yaml ` 이라는 yaml 파일이다. 차트의
67- ` Chart.yaml ` 파일의 내용을 포함하여 패키지에 대한 메타데이터가
68- 포함되어 있다. 적합한 차트 저장소는 인덱스 파일이 있어야 한다.
69- 인덱스 파일에는 차트 저장소의 각 차트에 대한 정보가 들어 있다.
70- ` helm repo index ` 명령은 패키지형 차트를 포함하는 지정된
66+ 인덱스 파일은 ` index.yaml ` 이라는 yaml 파일이다. 차트의
67+ ` Chart.yaml ` 파일의 내용을 포함하여 패키지에 대한 메타데이터가
68+ 포함되어 있다. 적합한 차트 저장소는 인덱스 파일이 있어야 한다.
69+ 인덱스 파일에는 차트 저장소의 각 차트에 대한 정보가 들어 있다.
70+ ` helm repo index ` 명령은 패키지형 차트를 포함하는 지정된
7171로컬 디렉토리를 기반으로 인덱스 파일을 생성한다.
7272
7373인덱스 파일의 예:
@@ -118,21 +118,21 @@ generated: 2016-10-06T16:23:20.499029981-06:00
118118
119119첫 번째 단계는 **GCS 버킷 만들기**다. ` fantastic-charts` 라고 부를 것이다.
120120
121- 
121+ 
122122
123123다음으로, **버킷 권한을 수정**하여 버킷을 공개하자.
124124
125- 
125+ 
126126
127127**버킷을 공개하기 위해** 다음 줄을 넣자.
128128
129- 
129+ 
130130
131131축하한다, 이제 차트를 서비스할 빈 GCS 버킷이 준비되었다!
132132
133- 구글 클라우드 스토리지 명령줄 도구 또는 GCS 웹 UI를 사용하여 차트
134- 저장소를 업로드하자. 이것은 공식 쿠버네티스 차트 저장소가
135- 차트를 호스팅하는 기술이기 때문에, 만약 막히면 당신은 [그 프로젝트를
133+ 구글 클라우드 스토리지 명령줄 도구 또는 GCS 웹 UI를 사용하여 차트
134+ 저장소를 업로드하자. 이것은 공식 쿠버네티스 차트 저장소가
135+ 차트를 호스팅하는 기술이기 때문에, 만약 막히면 당신은 [그 프로젝트를
136136간단히 보는 것](https://github.com/helm/charts)이 좋을 것이다.
137137
138138**참고:** 공용 GCS 버킷은 `https://bucket-name.storage.googleapis.com/` 에서 간단한
@@ -163,13 +163,13 @@ $ git checkout -b gh-pages
163163
164164깃헙 저장소의 **Branch** 버튼을 눌러 웹 브라우저를 통해 만들 수도 있다.
165165
166- 
166+ 
167167
168- 그런 다음 **gh-pages 브랜치**가 깃헙 페이지로 설정되어 있는지
169- 확인하고 저장소의 **Settings**를 클릭한 다음 **깃헙 페이지** 섹션으로
168+ 그런 다음 **gh-pages 브랜치**가 깃헙 페이지로 설정되어 있는지
169+ 확인하고 저장소의 **Settings**를 클릭한 다음 **깃헙 페이지** 섹션으로
170170스크롤하여 아래와 같이 설정하자.
171171
172- 
172+ 
173173
174174기본적으로 **Source**는 **gh-pages 브랜치**로 설정된다. 기본적으로 설정되어 있지
175175않으면 선택하자.
@@ -179,25 +179,25 @@ $ git checkout -b gh-pages
179179그리고 차트를 서비스할 때 HTTPS가 사용되도록 **HTTPS 강제(Enforce HTTPS)** 가 선택되어
180180있는지 확인하자.
181181
182- 이러한 설정에서 **master 브랜치**를 사용하여 차트 코드를 저장하고
183- **gh-pages 브랜치**를 차트 저장소로 저장할 수 있다
184- (예 : ` https://USERNAME.github.io/REPONAME` ). 데모 [TS 차트](https://github.com/technosophos/tscharts)
185- 저장소는 `https://technosophos.github.io/tscharts/` 에서
182+ 이러한 설정에서 **master 브랜치**를 사용하여 차트 코드를 저장하고
183+ **gh-pages 브랜치**를 차트 저장소로 저장할 수 있다
184+ (예 : ` https://USERNAME.github.io/REPONAME` ). 데모 [TS 차트](https://github.com/technosophos/tscharts)
185+ 저장소는 `https://technosophos.github.io/tscharts/` 에서
186186접근할 수 있다.
187187
188188# ## 일반 웹 서버
189189
190- 헬름 차트를 서비스하도록 일반 웹 서버를 설정하려면
190+ 헬름 차트를 서비스하도록 일반 웹 서버를 설정하려면
191191다음 작업만 수행하면 된다.
192192
193193- 서버가 서비스할 수 있는 디렉토리에 인덱스 및 차트 저장
194- - 인증 요구 사항 없이 `index.yaml` 파일에 접근할 수
194+ - 인증 요구 사항 없이 `index.yaml` 파일에 접근할 수
195195 있는지 확인
196196- ` yaml` 파일이 올바른 내용 유형(`text/yaml` 또는 `text/x-yaml`)과 함께 서비스되는지
197197 확인.
198198
199- 예를 들어, `$WEBROOT/charts` 에서 차트를 서비스하려면
200- 웹 루트 `charts/` 디렉토리가 있는지 확인하고 인덱스 파일과
199+ 예를 들어, `$WEBROOT/charts` 에서 차트를 서비스하려면
200+ 웹 루트 `charts/` 디렉토리가 있는지 확인하고 인덱스 파일과
201201차트를 해당 폴더 안에 넣자.
202202
203203# ## 차트뮤지엄 저장소 서버
@@ -216,7 +216,7 @@ BOS 스토리지](https://cloud.baidu.com/product/bos.html), [텐센트 클라
216216백엔드를 지원한다.
217217
218218[차트뮤지엄](https://chartmuseum.com/docs/#using-with-local-filesystem-storage)
219- 서버를 사용하여 로컬 파일 시스템에서
219+ 서버를 사용하여 로컬 파일 시스템에서
220220차트 저장소를 호스팅할 수 있다.
221221
222222# # 차트 저장소 관리
@@ -227,16 +227,16 @@ BOS 스토리지](https://cloud.baidu.com/product/bos.html), [텐센트 클라
227227
228228# ## 차트 저장소에 차트 저장
229229
230- 차트 저장소가 생겼으니 차트와 인덱스 파일을 저장소에
231- 업로드해 보자. 차트 저장소의 차트는
230+ 차트 저장소가 생겼으니 차트와 인덱스 파일을 저장소에
231+ 업로드해 보자. 차트 저장소의 차트는
232232올바르게 패키징하고(`helm package chart-name/`) 버전([SemVer 2](https://semver.org/)
233233가이드라인에 따라)이 제공되어야 한다.
234234
235- 다음 단계는 예제 워크플로우를 구성하지만 차트
236- 저장소에 차트를 저장하고 갱신하는 데 원하는
235+ 다음 단계는 예제 워크플로우를 구성하지만 차트
236+ 저장소에 차트를 저장하고 갱신하는 데 원하는
237237워크플로우를 모두 사용하자.
238238
239- 패키지형 차트가 준비되면 새 디렉토리를 만들고
239+ 패키지형 차트가 준비되면 새 디렉토리를 만들고
240240패키지형 차트를 해당 디렉토리로 이동시키자.
241241
242242` ` ` console
@@ -246,20 +246,20 @@ $ mv alpine-0.1.0.tgz fantastic-charts/
246246$ helm repo index fantastic-charts --url https://fantastic-charts.storage.googleapis.com
247247` ` `
248248
249- 마지막 명령은 방금 생성한 로컬 디렉토리의 경로와
250- 원격 차트 저장소의 URL을 사용하여 지정된 디렉토리
249+ 마지막 명령은 방금 생성한 로컬 디렉토리의 경로와
250+ 원격 차트 저장소의 URL을 사용하여 지정된 디렉토리
251251경로 내에 `index.yaml` 파일을 구성한다.
252252
253253
254- 이제 동기화 도구를 사용하거나 수동으로 차트 저장소에
255- 차트 및 인덱스 파일을 업로드할 수 있다. 구글 클라우드 스토리지를
254+ 이제 동기화 도구를 사용하거나 수동으로 차트 저장소에
255+ 차트 및 인덱스 파일을 업로드할 수 있다. 구글 클라우드 스토리지를
256256사용하는 경우 gsutil 클라이언트를 사용하여 이 [예제 워크플로우](/howto/chart_repository_sync_example.md)를
257257확인하자. 깃헙의 경우 해당 목적지 브랜치에 차트를 간단히 넣을 수 있다.
258258
259259# ## 기존 저장소에 새로운 차트 추가
260260
261- 저장소에 새로운 차트를 추가할 때마다 인덱스를 재생성해야 한다.
262- ` helm repo index` 명령은 로컬에서 찾은 차트만 포함하여
261+ 저장소에 새로운 차트를 추가할 때마다 인덱스를 재생성해야 한다.
262+ ` helm repo index` 명령은 로컬에서 찾은 차트만 포함하여
263263` index.yaml` 파일을 처음부터 완전히 재구성한다.
264264
265265그러나 `--merge` 플래그를 사용하여 새 차트를 기존 `index.yaml` 파일(GCS와 같은
@@ -271,11 +271,11 @@ $ helm repo index fantastic-charts --url https://fantastic-charts.storage.google
271271
272272# ## 다른 사람과 차트 공유
273273
274- 차트를 공유할 준비가 되면 다른 사람에게
274+ 차트를 공유할 준비가 되면 다른 사람에게
275275저장소의 URL을 알려주자.
276276
277- 그들은 저장소를 조회하기 위해 사용하고자 하는
278- 이름과 `helm repo add [이름] [URL]` 명령을 통해
277+ 그들은 저장소를 조회하기 위해 사용하고자 하는
278+ 이름과 `helm repo add [이름] [URL]` 명령을 통해
279279저장소를 헬름 클라이언트에 추가할 것이다.
280280
281281` ` ` console
@@ -295,15 +295,15 @@ fantastic-charts https://fantastic-charts.storage.googleapis.com
295295**참고:** 저장소에 유효한 `index.yaml`이 포함되어 있지 않으면 저장소가 추가되지 않는다.
296296
297297**참고:** 헬름 저장소가 자체 서명된 인증서를 사용하는 경우
298- CA 검증을 건너뛰기 위해서
298+ CA 검증을 건너뛰기 위해서
299299` helm repo add --insecure-skip-tls-verify ...` 을 사용할
300300수 있다.
301301
302- 그 후에 사용자들은 당신의 차트를 검색할 수 있을 것이다.
303- 당신이 저장소를 업데이트한 후에는 사용자들이 `helm repo update` 명령을
302+ 그 후에 사용자들은 당신의 차트를 검색할 수 있을 것이다.
303+ 당신이 저장소를 업데이트한 후에는 사용자들이 `helm repo update` 명령을
304304사용하여 최신 차트 정보를 가져올 수 있다.
305305
306- *내부에서 `helm repo add` 및 `helm repo update` 명령은
307- index.yaml 파일을 가져와 `$XDG_CACHE/helm/repository/cache/` 디렉토리에
308- 저장하고 있다. 여기는 `helm search` 기능이
306+ *내부에서 `helm repo add` 및 `helm repo update` 명령은
307+ index.yaml 파일을 가져와 `$XDG_CACHE/helm/repository/cache/` 디렉토리에
308+ 저장하고 있다. 여기는 `helm search` 기능이
309309차트에 대한 정보를 찾는 곳이다.*
0 commit comments