0Pricing
Helm Academy · レッスン

helmfile.yaml でのリリース定義

リリースごとのチャート、namespace、values を列挙します。

「helmfile.yaml でのリリース定義」はCoddyKit上の無料Helm Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはHelm Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Helm Academyコースには全4レッスンが含まれています。

releases リスト

helmfile.yaml の中心となるのがreleasesリストです。各項目には、クラスターで実行したい1つの Helm リリースを記述します。

releases:
  - name: web
    namespace: frontend
    chart: ./charts/web

name と chart

すべてのリリースにはnameとチャートが必要です。name は Helm リリース名で、chart はローカルパスまたはリポジトリのチャートを指します。

- name: api
  chart: ./charts/api

Namespace を選択する

namespaceフィールドで、リリースをインストールする場所を指定します。Helmfile を使えば、毎回 -n と入力しなくても各リリースを適切な場所に配置できます。

- name: redis
  namespace: cache
  chart: bitnami/redis

リポジトリのチャートを参照する

公開されているチャートを使うには、まず上部でrepositoryを宣言し、リリースの chart に repoName/chartName を指定します。

repositories:
  - name: bitnami
    url: https://charts.bitnami.com/bitnami
releases:
  - name: pg
    chart: bitnami/postgresql

チャートのバージョンを固定する

versionを追加して、そのリリースで使うチャートのバージョンを固定します。バージョンを固定すると、最新のものを無条件に取得するのではなく、再現性のあるデプロイができます。

- name: pg
  chart: bitnami/postgresql
  version: "15.5.0"

インラインで Values を指定する

valuesキーでチャートの設定を指定します。リリースのエントリ内に小さなマップとして上書き値を直接記述できます。

- name: web
  chart: ./charts/web
  values:
    - replicaCount: 3

ファイルから Values を読み込む

設定が大きくなる場合は、valuesに YAML ファイルのパスを指定します。helm -f を使う場合と同じように、上書き値を専用ファイルでバージョン管理できます。

- name: web
  chart: ./charts/web
  values:
    - ./values/web.yaml

ファイルとインラインを組み合わせる

valuesリストには、ファイルパスとインラインマップを混在させられます。後のエントリが前のエントリを上書きするため、最も具体的な値を最後に配置します。

values:
  - ./values/base.yaml
  - replicaCount: 5

単一の値を手早く上書きする

一時的な調整には、setキーを helm --set と同じように使えます。ファイル全体を作成せず、1つのスカラー値だけを指定したい場合に便利です。

- name: web
  chart: ./charts/web
  set:
    - name: image.tag
      value: "1.4.2"

リリースを切り替える

installedフラグで、リリースを有効または無効にします。false に設定すると、次回の sync で Helmfile がそのリリースをアンインストールします。

- name: debug-tools
  chart: ./charts/debug
  installed: false

複数のリリースを1つのファイルで管理する

必要な数だけreleasesの下にリリースを列挙します。Helmfile はそれらすべてを、1つの整合したスタックとしてまとめて管理します。

クイックチェック

リリースのエントリを追加しましたが、次回の実行時にクラスターから削除したいとします。どのフィールドを使いますか?

振り返り: リリースを定義する

リリースにはnameと chart が必要で、さらに namespace、version、values、set、installed を任意で指定できることを学びました。次は、環境ごとの値を扱います。🧩

よくある質問

「helmfile.yaml でのリリース定義」レッスンは無料ですか?

はい。「helmfile.yaml でのリリース定義」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Helm Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Helm Academyコースには全4レッスンが含まれています。

「helmfile.yaml でのリリース定義」で何を学びますか?

リリースごとのチャート、namespace、values を列挙します。 ブラウザで直接実行するハンズオンコードでHelm Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Helm Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのHelm Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「helmfile.yaml でのリリース定義」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このHelm Academyレッスンでコードを書いて実行できますか?

はい。すべてのHelm Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Helmfile が Helm の上位に位置する理由
  2. helmfile.yaml でのリリース定義
  3. 環境と環境別の値
  4. helmfile diff、apply、sync
← Helm Academyに戻る