|
この文書は自動機械翻訳技術を使用して翻訳されています。 正確な翻訳を提供するように努めておりますが、翻訳された内容の完全性、正確性、信頼性については一切保証いたしません。 相違がある場合は、元の英語版 英語 が優先され、正式なテキストとなります。 |
アプリを作成する
|
チャートの開発に関する完全な手順については、公式のHelmドキュメントにある チャートテンプレート開発者ガイドを参照してください。 |
チャートタイプ
Rancherは2種類のチャートをサポートしています:HelmチャートとRancherチャート。
Helmチャート
ネイティブHelmチャートには、アプリケーションとそれを実行するために必要な他のソフトウェアが含まれています。ネイティブHelmチャートをデプロイする際には、YAMLエディタでチャートのパラメータ値を提供できます。
Rancherチャート
Rancherチャートは、ユーザーエクスペリエンスを向上させる2つのファイル`app-readme.md`と`questions.yaml`を持つネイティブHelmチャートです。それらについては、Rancherチャートの追加ファイルについて。を参照してください。
Rancherチャートは、アプリケーションのデプロイを容易にするために、簡略化されたチャートの説明と設定フォームを追加します。Rancherユーザーは、アプリケーションを起動する方法を理解するために、Helm変数の全リストを読み通す必要はありません。
チャートディレクトリ構造
Helmチャートを標準のHTTPベースのHelmリポジトリで提供できます。詳細については、公式のHelmドキュメントにある チャートリポジトリガイドを参照してください。
また、チャートをGitリポジトリに整理し、これをアプリマーケットプレイスに直接追加することもできます。
以下の表は、Gitリポジトリのディレクトリ構造を示しています。charts`ディレクトリは、リポジトリのベースの下にある最上位ディレクトリです。リポジトリをRancherに追加すると、その中に含まれるすべてのチャートが公開されます。`questions.yaml、README.md、および`requirements.yml`ファイルはRancherチャートに特有ですが、チャートのカスタマイズにはオプションです。
<Repository-Base>/ │ ├── charts/ │ ├── <Application Name>/ # This directory name will be surfaced in the Rancher UI as the chart name │ │ ├── <App Version>/ # Each directory at this level provides different app versions that will be selectable within the chart in the Rancher UI │ │ │ ├── Chart.yaml # Required Helm chart information file. │ │ │ ├── questions.yaml # Form questions displayed within the Rancher UI. Questions display in Configuration Options.* │ │ │ ├── README.md # Optional: Helm Readme file displayed within Rancher UI. This text displays in Detailed Descriptions. │ │ │ ├── requirements.yml # Optional: YAML file listing dependencies for the chart. │ │ │ ├── values.yml # Default configuration values for the chart. │ │ │ ├── templates/ # Directory containing templates that, when combined with values.yml, generates Kubernetes YAML.
Rancher チャートの追加ファイル
独自のカスタムカタログを作成する前に、Rancher チャートがネイティブ Helm チャートとどのように異なるかについて基本的な理解を持っている必要があります。Rancher チャートは、ディレクトリ構造において Helm チャートとわずかに異なります。Rancher チャートには、Helm チャートにはない 2 つのファイルが含まれています。
-
app-readme.mdチャートの UI ヘッダーに表示される説明テキストを提供するファイル。
-
questions.ymlフォームの質問を含むファイル。これらのフォームの質問は、チャートのデプロイを簡素化します。これがない場合、値 YAML 設定を使用してデプロイを構成する必要があり、より難しくなります。以下の画像は、Rancher チャート(
questions.ymlを含む)とネイティブ Helm チャート(questions.ymlを含まない)の違いを示しています。
questions.yml を含む Rancher チャート
questions.yml を含まない Helm チャートChart.yaml
注釈
Rancher は、Chart.yaml ファイルに追加できる注釈をサポートしています。これらの注釈を使用すると、アプリケーションの依存関係を定義したり、追加の UI デフォルトを構成したりできます:
| アノテーション | 説明 | 例 |
|---|---|---|
catalog.cattle.io/auto-install |
設定されている場合、指定されたバージョンの指定されたチャートをこのチャートをインストールする前にインストールします。 |
other-chart-name=1.0.0 |
catalog.cattle.io/display-name |
チャート名の代わりに App Marketplace に表示されるべき表示名。 |
チャートの表示名 |
catalog.cattle.io/namespace |
チャートがデプロイされるべき固定のネームスペース。設定されている場合、ユーザーによって変更することはできません。 |
fixed-namespace |
catalog.cattle.io/release-name |
Helm インストールの固定リリース名。設定されている場合、ユーザーによって変更することはできません。 |
fixed-release-name |
catalog.cattle.io/requests-cpu |
クラスター内で予約されていないべき CPU の総量。CPUが不足している場合、警告が表示されます。 |
2000m |
catalog.cattle.io/requests-memory |
クラスター内で予約されていないメモリの総量。メモリが不足している場合、警告が表示されます。 |
2Gi |
catalog.cattle.io/os |
このチャートをインストールできるOSを制限します。指定可能な値: |
linux |
最小/最大Rancherバージョン
各チャートに対して、最小および/または最大のRancherバージョンを追加できます。これにより、このチャートがRancherからデプロイ可能かどうかが決まります。
|
Rancherのリリースバージョンは`v`で始まりますが、このオプションを使用する場合、リリースバージョンには_プレフィックスはありません_。 |
rancher_min_version: 2.3.0 rancher_max_version: 2.3.99
質問変数参照
この参照には、`questions.yml`の下にネストされた`questions:`で使用できる変数が含まれています。
| [可変] | タイプ | 必須 | 説明 |
|---|---|---|---|
変数 |
文字列 |
true |
`values.yml`ファイルに指定された変数名を定義し、ネストされたオブジェクトには`foo.bar`を使用します。 |
label |
文字列 |
true |
UIラベルを定義します。 |
description |
文字列 |
false |
変数の説明を指定します。 |
type |
文字列 |
false |
指定されていない場合は`string`がデフォルトとなります(現在サポートされているタイプは文字列、マルチライン、ブール値、整数、列挙、パスワード、ストレージクラス、ホスト名、PVC、シークレット、クラウドクレデンシャルです)。 |
必須 |
bool |
false |
変数が必須かどうかを定義します(true | false) |
default |
文字列 |
false |
デフォルト値を指定します。`values.yml`ファイルに対応する値がない場合にのみ使用されます。 |
グループ |
文字列 |
false |
入力値によって質問をグループ化します。 |
min_length |
int |
false |
最小文字数。 |
max_length |
int |
false |
最大文字数。 |
min |
int |
false |
最小整数値。 |
max |
int |
false |
最大整数値。 |
options |
[]string |
false |
変数タイプが`enum`の場合、オプションを指定します。例えば、 |
valid_chars |
文字列 |
false |
入力文字の検証用正規表現。 |
invalid_chars |
文字列 |
false |
無効な入力文字の検証用正規表現。 |
subquestions |
[]サブ質問 |
false |
サブ質問の配列を追加します。 |
show_if |
文字列 |
false |
条件付き変数が真の場合、現在の変数を表示します。例えば、 |
show_subquestion_if |
文字列 |
false |
真であるか、オプションのいずれかに等しい場合、サブ質問を表示します。例えば、 |
|
`subquestions[]`は`subquestions`または`show_subquestions_if`キーを含むことはできませんが、上記の表の他のすべてのキーはサポートされています。 |