Kf は、kf
Namespace で config-defaults
という名前の Kubernetes configmap を使用して、クラスタ全体の構成設定を保存します。このドキュメントでは、その構造とフィールドについて説明します。
config-defaults configmap の構造
configmap では、.data
フィールドに次の 3 種類の Key-Value ペアが含まれます。
- 先頭に
_
が付いたコメントキーには、サンプル、メモ、警告が含まれます。 - 文字列キーには書式なしテキスト値が含まれます。
- オブジェクト キーには、文字列としてエンコードされた JSON 値または YAML 値が含まれます。
例:
_note: "This is some note"
stringKey: "This is a string key that's not encoded as JSON or YAML."
objectKey: |
- "These keys contain nested YAML or JSON."
- true
- 123.45
セクションの例
_example
キーの下のセクションの例には、他のフィールドと例の説明が含まれます。このセクションに変更を加えても、影響はありません。
スペース コンテナ レジストリ
spaceContainerRegistry
プロパティは書式なしテキスト値で、各スペースがビルドされたイメージを保存するために使用するデフォルトのコンテナ レジストリを指定します。
例:
spaceContainerRegistry: gcr.io/my-project
スペース クラスタ ドメイン
spaceClusterDomains
プロパティは、ドメイン オブジェクトの文字列エンコードの YAML 配列です。
クラスタ内の各スペースは、配列内のすべてのアイテムを、デベロッパーがアプリをバインドできるドメインのリストに追加します。
フィールド | |
---|---|
domain |
使用可能にするドメイン名。次のいずれかの置換を含むことができます。
|
gatewayName |
(省略可)
バインドされる Istio ゲートウェイ ルートをオーバーライドします。デフォルトは |
例:
spaceClusterDomains: |
# Support canonical and vanity domains
- domain: $(SPACE_NAME).prod.example.com
- domain: $(SPACE_NAME).kf.us-east1.prod.example.com
# Using a dynamic DNS resolver
- domain: $(SPACE_NAME).$(CLUSTER_INGRESS_IP).nip.io
# Creating an internal domain only visible within the cluster
- domain: $(SPACE_NAME)-apps.internal
gatewayName: kf/internal-gateway
Buildpacks V2 ライフサイクル ビルダー
buildpacksV2LifecycleBuilder
プロパティには、Buildpack v2 ビルドを実行するために使用される Cloud Foundry builder
バイナリのバージョンが含まれます。
値は Git リファレンスです。特定のバージョンを使用するには、末尾に @
記号を付けてその後ろに Git SHA を追加します。
例:
buildpacksV2LifecycleBuilder: "code.cloudfoundry.org/buildpackapplifecycle/builder@GIT_SHA"
Buildpacks V2 ライフサイクル ランチャー
buildpacksV2LifecycleLauncher
プロパティには、すべての buildpack V2 アプリケーションにビルドされた Cloud Foundry launcher
バイナリのバージョンが含まれます。
値は Git リファレンスです。特定のバージョンを使用するには、末尾に @
記号を付けてその後ろに Git SHA を追加します。
例:
buildpacksV2LifecycleLauncher: "code.cloudfoundry.org/buildpackapplifecycle/launcher@GIT_SHA"
Buildpacks V2 リスト
spaceBuildpacksV2
プロパティは、V2 Buildpack プロセスと互換性のあるアプリケーションをビルドするために使用される、デフォルトの Buildpack の順序付きリストを保持する文字列エンコードされた YAML 配列です。
フィールド | |
---|---|
name |
デベロッパーがアプリ マニフェスト内で Buildpack を参照するために使用できる短い名前。 |
url |
Buildpack を取得する際に使用する URL。 |
disabled |
このビルドパックが実行されないようにするために使用されます。 |
スタック V2 リスト
spaceBuildpacksV2
プロパティは、Cloud Foundry 互換ビルドに使用できるスタックの順序付きリストを保持する文字列エンコードされた YAML 配列です。
フィールド | |
---|---|
name |
デベロッパーがアプリ マニフェスト内でスタックを参照するために使用できる短い名前。 |
image |
スタックとして使用するコンテナ イメージの URL。詳細については、https://kubernetes.io/docs/concepts/containers/images をご覧ください。 |
スタック V3 リスト
spaceStacksV3
プロパティは、Cloud Native Buildpack ビルドに使用できるスタックの順序付きリストを保持する文字列エンコードされた YAML 配列です。
フィールド | |
---|---|
name |
デベロッパーがアプリ マニフェスト内でスタックを参照するために使用できる短い名前。 |
description |
|
buildImage |
ビルダーとして使用するコンテナ イメージの URL。詳細については、https://kubernetes.io/docs/concepts/containers/images をご覧ください。 |
runImage |
ビルドされたすべてのアプリのベースとして使用するコンテナ イメージの URL。詳細については、https://kubernetes.io/docs/concepts/containers/images をご覧ください。 |
nodeSelector |
(省略可) このスタックでビルドされたアプリケーションを実行できるノードを示すために使用される NodeSelector。 |
例:
spaceStacksV3: |
- name: heroku-18
description: The official Heroku stack based on Ubuntu 18.04
buildImage: heroku/pack:18-build
runImage: heroku/pack:18
nodeSelector:
kubernetes.io/os: windows
デフォルトは V3 スタック
spaceDefaultToV3Stack
プロパティには、ユーザーが V3 スタックを指定しない場合に、スペースで V3 スタックを使用するかどうかを示す引用符付きの値 true
または false
が含まれます。
フィーチャー トグル
featureFlags
プロパティには、Kf 機能の有効 / 無効を設定できる機能フラグの文字列エンコードされた YAML 配列が含まれます。
Kf でサポートされていないフラグ名は無視されます。
フラグ名 | デフォルト | 目的 |
---|---|---|
disable_custom_builds |
false |
任意の Tekton ビルド パイプラインに対するデベロッパーのアクセス権を無効にします。 |
enable_dockerfile_builds |
true |
デベロッパーが Dockerfile からソースコードを作成できるようにします。 |
enable_custom_buildpacks |
true |
デベロッパーがアプリケーションで外部 Buildpack を指定できるようにします。 |
enable_custom_stacks |
true |
デベロッパーがアプリ内でカスタム スタックを指定できるようにします。 |
例:
featureFlags: |
disable_custom_builds: false
enable_dockerfile_builds: true
enable_some_feature: true