Kf 在 kf
命名空间中使用名为 config-defaults
的 Kubernetes configMap 来存储集群范围的配置设置。本文档介绍了其结构和字段。
config-defaults configmap 的结构
configmap 的 .data
字段中包含三种类型的键值对:
- 以
_
为前缀的注释键包含示例、备注和警告。 - 字符串键包含纯文本值。
- 对象键包含已编码为字符串的 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
键下的示例部分介绍了其他字段和示例。对此部分所做的更改无效。
Space container registry
spaceContainerRegistry
属性是一个纯文本值,用于指定每个空间用于存储构建映像的默认容器注册表。
示例:
spaceContainerRegistry: gcr.io/my-project
空间集群网域
spaceClusterDomains
属性是一个经过编码的字符串数组,其中包含网域对象。
集群中的每个空间都会将数组中的所有项添加至开发者可将其应用绑定到的网域列表中。
字段 | |
---|---|
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
Buildpack 第 2 版生命周期构建器
buildpacksV2LifecycleBuilder
属性包含使用执行 buildpack 第 2 版构建的 Cloud Foundry builder
二进制文件版本。
该值是一个 Git 参考。如需使用特定版本,请在末尾附加 @
符号,后跟 Git SHA。
示例:
buildpacksV2LifecycleBuilder: "code.cloudfoundry.org/buildpackapplifecycle/builder@GIT_SHA"
Buildpack 第 2 版生命周期启动器
buildpacksV2LifecycleLauncher
属性包含在每个 buildpack 第 2 版应用中构建的 Cloud Foundry launcher
二进制文件版本。
该值是一个 Git 参考。如需使用特定版本,请在末尾附加 @
符号,后跟 Git SHA。
示例:
buildpacksV2LifecycleLauncher: "code.cloudfoundry.org/buildpackapplifecycle/launcher@GIT_SHA"
Buildpack 第 2 版列表
spaceBuildpacksV2
属性是一个字符串编码 YAML 数组,其中包含用于构建与第 2 版 buildpack 进程兼容的默认 buildpack 有序列表。
字段 | |
---|---|
name |
开发者可以在应用清单中用来参考 buildpack 的短名称。 |
url |
用于获取 buildpack 的网址。 |
disabled |
用于阻止此 buildpack 执行。 |
堆栈第 2 版列表
spaceBuildpacksV2
属性是一个字符串编码的 YAML 数组,其中包含可用于 Cloud Foundry 兼容构建的堆栈有序列表。
字段 | |
---|---|
name |
开发者可以在应用清单中用来参考堆栈的短名称。 |
image |
要用作堆栈的容器映像的网址。如需了解详情,请参阅 https://kubernetes.io/docs/concepts/containers/images。 |
堆栈第 3 版列表
spaceStacksV3
属性是一个字符串编码的 YAML 数组,其中包含可与 Cloud Native Buildpack 构建一起使用的堆栈有序列表。
字段 | |
---|---|
name |
开发者可以在应用清单中用来参考堆栈的短名称。 |
description |
运行 |
buildImage |
用作构建器的容器映像的网址。如需了解详情,请参阅 https://kubernetes.io/docs/concepts/containers/images。 |
runImage |
该容器映像的网址,用作所有应用的构建基础。如需了解详情,请参阅 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
默认为第 3 版堆栈
spaceDefaultToV3Stack
属性包含带英文引号的值 true
或 false
,表示用户未指定第 3 版堆栈时空间是否应使用第 3 版堆栈。
功能标志
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