O Kf usa um configmap do Kubernetes chamado config-defaults
no namespace kf
para armazenar as configurações de todo o cluster.
Este documento explica a estrutura e os campos.
Estrutura do config-defaults configmap
O configmap contém três tipos de pares de chave-valor no campo .data
:
- As chaves de comentário prefixadas por
_
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 que foi 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
Exemplo de seção
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.
Registro do contêiner de espaço
A propriedade spaceContainerRegistry
é um valor de texto simples que especifica o registro de contêiner padrão que cada espaço usa para armazenar imagens criadas.
Exemplo:
spaceContainerRegistry: gcr.io/my-project
Domínios de cluster espacial
A propriedade spaceClusterDomains
é uma matriz YAML de string codificada 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 que se conectam ao gateway do Istio.
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
Criador de ciclo de vida da Buildpacks V2
A propriedade buildpacksV2LifecycleBuilder
contém a versão do binário builder
do Cloud Foundry usado para executar builds de buildpack v2.
O valor é uma referência do Git. Para usar uma versão específica, anexe um símbolo @
seguido por um SHA Git do final.
Exemplo:
buildpacksV2LifecycleBuilder: "code.cloudfoundry.org/buildpackapplifecycle/builder@GIT_SHA"
Tela de início do ciclo de vida do Buildpacks V2
A propriedade buildpacksV2LifecycleLauncher
contém a versão do binário launcher
do Cloud Foundry incorporado em cada aplicativo da versão do pacote V2.
O valor é uma referência do Git. Para usar uma versão específica, anexe um símbolo @
seguido por um SHA Git do final.
Exemplo:
buildpacksV2LifecycleLauncher: "code.cloudfoundry.org/buildpackapplifecycle/launcher@GIT_SHA"
Lista de Buildpacks V2
A propriedade spaceBuildpacksV2
é uma matriz YAML codificada em strings que contém uma lista ordenada de pacotes de criação padrão usados para criar apps compatíveis com o processo de pacotes de versão V2.
Campos | |
---|---|
name |
Um nome curto que os desenvolvedores podem usar para referenciar o pacote de compilação nos manifestos do aplicativo. |
url |
O URL usado para buscar o buildpack. |
disabled |
Usado para evitar a execução deste pacote de compilação. |
Lista de pilhas V2
A propriedade spaceBuildpacksV2
é uma matriz YAML codificada em strings que contém uma lista ordenada de pilhas que podem ser usadas com builds compatíveis com o Cloud Foundry.
Campos | |
---|---|
name |
É um nome abreviado que os desenvolvedores usam para referenciar a pilha nos manifestos do aplicativo. |
image |
URL da imagem do contêiner a ser usado como a pilha. Para mais informações, consulte https://kubernetes.io/docs/concepts/containers/images. |
Lista de pilhas V3
A propriedade spaceStacksV3
é uma matriz YAML codificada em strings que contém uma lista ordenada de pilhas que podem ser usadas com versões do Cloud Native Buildpack.
Campos | |
---|---|
name |
É um nome abreviado que os desenvolvedores usam para referenciar a pilha nos manifestos do aplicativo. |
description |
Uma breve descrição da pilha mostrada ao executar |
buildImage |
URL da imagem do contêiner a ser usado como a pilha. Para mais informações, consulte https://kubernetes.io/docs/concepts/containers/images. |
runImage |
URL da imagem do contêiner a ser usado 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 quais aplicativos de nós 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 V3 como padrão
A propriedade spaceDefaultToV3Stack
contém um valor citado true
ou false
para indicar se os espaços devem usar pilhas V3 se o usuário não especificar um.
Flags de recursos
A propriedade featureFlags
contém um mapa YAML codificado em string que permite ativar e desativar recursos do Kf.
Os nomes de sinalizações que não forem compatíveis com Kf serão ignorados.
Nome da sinalização | Padrão | Finalidade |
---|---|---|
disable_custom_builds |
false |
Desative o acesso do desenvolvedor a pipelines de criação arbitrários do Tekton. |
enable_dockerfile_builds |
true |
Permitir que os desenvolvedores criem código-fonte a partir do dockerfiles. |
enable_custom_buildpacks |
true |
Permitir que os desenvolvedores especifiquem pacotes de criação externos nos aplicativos. |
enable_custom_stacks |
true |
Permitir que os desenvolvedores especifiquem pilhas personalizadas nos apps. |
Exemplo:
featureFlags: |
disable_custom_builds: false
enable_dockerfile_builds: true
enable_some_feature: true