O Kf usa um ConfigMap do Kubernetes chamado config-defaults no namespace kf
para armazenar as configurações do cluster.
Este documento explica essa estrutura e os campos dela.
Estrutura do ConfigMap config-defaults
O ConfigMap contém três tipos de pares de chave-valor no campo .data:
- As chaves de comentário com o prefixo
_contêm exemplos, observações e avisos. - As chaves de string contêm valores de texto simples.
- As chaves de objeto contêm um valor JSON ou YAML codificado como uma string.
Exemplo:
_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
Seção de exemplo
A seção de exemplo na chave _example contém
explicações de outros campos e exemplos. As alterações nesta seção não têm efeito.
Container Registry do espaço
A propriedade spaceContainerRegistry é um valor de texto simples que especifica o Container Registry padrão
que cada espaço usa para armazenar as imagens criadas.
Exemplo:
spaceContainerRegistry: gcr.io/my-project
Domínios de cluster do espaço
A propriedade spaceClusterDomains é uma matriz YAML codificada em string de objetos de domínio.
Cada espaço no cluster adiciona todos os itens da matriz à lista de domínios a que os desenvolvedores podem vincular os apps.
| Campos | |
|---|---|
domain |
O nome de domínio a ser disponibilizado. Pode conter uma das seguintes substituições:
|
gatewayName |
(Opcional)
Substitui as rotas do gateway do Istio que serão vinculadas.
O padrão é |
Exemplo:
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
Builder de ciclo de vida para buildpacks da V2
A propriedade buildpacksV2LifecycleBuilder contém a versão do binário builder do Cloud Foundry
usado para executar builds de buildpacks da v2.
O valor é uma referência do Git. Para usar uma versão específica, anexe um
símbolo @ seguido por um SHA do Git no final.
Exemplo:
buildpacksV2LifecycleBuilder: "code.cloudfoundry.org/buildpackapplifecycle/builder@GIT_SHA"
Tela de início do ciclo de vida para buildpacks da V2
A propriedade buildpacksV2LifecycleLauncher contém a versão do binário launcher do Cloud Foundry incorporado
em cada aplicativo dos buildpacks da V2.
O valor é uma referência do Git. Para usar uma versão específica, anexe um
símbolo @ seguido por um SHA do Git no final.
Exemplo:
buildpacksV2LifecycleLauncher: "code.cloudfoundry.org/buildpackapplifecycle/launcher@GIT_SHA"
Lista de buildpacks da V2
A propriedade spaceBuildpacksV2 é uma matriz YAML codificada em string que contém uma lista
ordenada de buildpacks padrão usados para criar
aplicativos aceitos pelo processo dos buildpacks da V2.
| Campos | |
|---|---|
name |
Um nome curto que os desenvolvedores podem usar para fazer referência ao buildpack nos manifestos do aplicativo. |
url |
O URL usado para buscar o buildpack. |
disabled |
Usado para evitar a execução do buildpack. |
Lista de pilhas da V2
A propriedade spaceBuildpacksV2 é uma matriz YAML codificada em string que contém uma lista
ordenada de pilhas que podem ser usadas com builds aceitos pelo Cloud Foundry.
| Campos | |
|---|---|
name |
Um nome curto que os desenvolvedores usam para fazer referência à pilha nos manifestos do aplicativo. |
image |
URL da imagem de contêiner a ser usada como pilha. Para mais informações, consulte https://kubernetes.io/docs/concepts/containers/images. |
Lista de pilhas da V3
A propriedade spaceStacksV3 é uma matriz YAML
codificada em string que contém uma lista
ordenada de pilhas que podem ser usadas com
builds do Cloud Native Buildpack.
| Campos | |
|---|---|
name |
Um nome curto que os desenvolvedores usam para fazer referência à pilha nos manifestos do aplicativo. |
description |
Uma breve descrição da pilha mostrada ao executar |
buildImage |
URL da imagem de contêiner a ser usada como pilha. Para mais informações, consulte https://kubernetes.io/docs/concepts/containers/images. |
runImage |
URL da imagem de contêiner a ser usada como base para todos os apps criados com . Para mais informações, consulte https://kubernetes.io/docs/concepts/containers/images. |
nodeSelector |
(Opcional) Um NodeSelector usado para indicar em quais nós os aplicativos criados com essa pilha podem ser executados. |
Exemplo:
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
Usar a pilha da V3 como padrão
A propriedade spaceDefaultToV3Stack contém um valor true ou false para indicar
se os espaços devem usar as pilhas da V3 quando o usuário não especifica nada.
Flags de recurso
A propriedade featureFlags contém um mapa YAML codificado em string de flags de recurso que
permite ativar e desativar os recursos do Kf.
Os nomes de flags que não são aceitos no Kf serão ignorados.
| Nome da flag | Padrão | Finalidade |
|---|---|---|
disable_custom_builds |
false |
Desativar o acesso do desenvolvedor a pipelines de build arbitrários do Tekton. |
enable_dockerfile_builds |
true |
Permitir que os desenvolvedores criem o código-fonte com base em Dockerfiles. |
enable_custom_buildpacks |
true |
Permitir que os desenvolvedores especifiquem buildpacks externos nos aplicativos. |
enable_custom_stacks |
true |
Permitir que os desenvolvedores especifiquem pilhas personalizadas nos aplicativos. |
Exemplo:
featureFlags: |
disable_custom_builds: false
enable_dockerfile_builds: true
enable_some_feature: true