Kf utilizza un configmap Kubernetes denominato config-defaults
nello
spazio dei nomi kf
per memorizzare le impostazioni di configurazione a livello di cluster.
Questo documento ne spiega la struttura e i campi.
Struttura del ConfigMap config-defaults
Il configmap contiene tre tipi di coppie chiave/valore nel campo .data
:
- Le chiavi di commento con prefisso
_
contengono esempi, note e avvisi. - Le chiavi di stringa contengono valori in testo normale.
- Le chiavi degli oggetti contengono un valore JSON o YAML che è stato codificato come stringa.
Esempio:
_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
Sezione di esempio
La sezione di esempio sotto la chiave _example
contiene spiegazioni per altri campi ed esempi. Le modifiche a questa sezione non hanno alcun effetto.
Registry dei contenitori dello spazio
La proprietà spaceContainerRegistry
è un valore di testo normale che specifica il
registro dei contenitori predefinito utilizzato da ogni spazio per archiviare le immagini create.
Esempio:
spaceContainerRegistry: gcr.io/my-project
Domini dei cluster di spazio
La proprietà spaceClusterDomains
è un array YAML di oggetti di dominio codificati in stringa.
Ogni spazio del cluster aggiunge tutti gli elementi dell'array al proprio elenco di domini a cui gli sviluppatori possono associare le proprie app.
Campi | |
---|---|
domain |
Il nome di dominio da rendere disponibile. Può contenere una delle seguenti sostituzioni:
|
gatewayName |
(facoltativo)
Sostituisce le route del gateway Istio a cui verranno associate.
Il valore predefinito è |
Esempio:
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 V2 lifecycle builder
La proprietà buildpacksV2LifecycleBuilder
contiene la versione del codice binario builder
Cloud Foundry utilizzato per eseguire le build del buildpack v2.
Il valore è un riferimento Git. Per utilizzare una versione specifica, aggiungi alla fine un simbolo @
seguito da un SHA di Git.
Esempio:
buildpacksV2LifecycleBuilder: "code.cloudfoundry.org/buildpackapplifecycle/builder@GIT_SHA"
Avvio del ciclo di vita dei buildpack V2
La proprietà buildpacksV2LifecycleLauncher
contiene la versione del codice binario Cloud Foundrylauncher
integrato in ogni applicazione buildpack V2.
Il valore è un riferimento Git. Per utilizzare una versione specifica, aggiungi alla fine un simbolo @
seguito da un SHA di Git.
Esempio:
buildpacksV2LifecycleLauncher: "code.cloudfoundry.org/buildpackapplifecycle/launcher@GIT_SHA"
Elenco dei buildpack V2
La proprietà spaceBuildpacksV2
è un array YAML con codifica a stringa che contiene un elenco ordinato di buildpack predefiniti utilizzati per creare applicazioni compatibili con il processo dei buildpack V2.
Campi | |
---|---|
name |
Un nome breve che gli sviluppatori possono utilizzare per fare riferimento al buildpack nei manifest delle applicazioni. |
url |
L'URL utilizzato per recuperare il buildpack. |
disabled |
Utilizzato per impedire l'esecuzione di questo buildpack. |
Elenco di serie V2
La proprietà spaceBuildpacksV2
è un array YAML codificato in stringa che contiene un elenco ordinato di stack che possono essere utilizzati con le build compatibili con Cloud Foundry.
Campi | |
---|---|
name |
Un nome breve che gli sviluppatori possono utilizzare per fare riferimento allo stack nei manifest delle applicazioni. |
image |
URL dell'immagine del container da utilizzare come stack. Per ulteriori informazioni, visita la pagina https://kubernetes.io/docs/concepts/containers/images. |
Elenco di Stacks V3
La proprietà spaceStacksV3
è un array YAML codificato in stringa che contiene un elenco ordinato di stack che possono essere utilizzati con le build di Cloud Native Buildpack.
Campi | |
---|---|
name |
Un nome breve che gli sviluppatori possono utilizzare per fare riferimento allo stack nei manifest delle applicazioni. |
description |
Una breve descrizione dello stack visualizzata quando viene eseguito |
buildImage |
URL dell'immagine del container da utilizzare come builder. Per ulteriori informazioni, visita la pagina https://kubernetes.io/docs/concepts/containers/images. |
runImage |
URL dell'immagine del contenitore da utilizzare come base per tutte le app create con . Per ulteriori informazioni, visita la pagina https://kubernetes.io/docs/concepts/containers/images. |
nodeSelector |
(facoltativo) Un NodeSelector utilizzato per indicare su quali nodi possono essere eseguite le applicazioni create con questo stack. |
Esempio:
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
Impostazione predefinita sull'organizzazione V3
La proprietà spaceDefaultToV3Stack
contiene un valore tra virgolette true
o false
che indica se gli spazi devono utilizzare gli stack V3 se un utente non ne specifica uno.
Flag di funzionalità
La proprietà featureFlags
contiene una mappa YAML codificata in stringa di flag di funzionalità
che può attivare e disattivare le funzionalità di Kf.
I nomi degli indicatori non supportati da Kf verranno ignorati.
Nome del flag | Predefinito | Finalità |
---|---|---|
disable_custom_builds |
false |
Disattiva l'accesso degli sviluppatori a pipeline di compilazione Tekton arbitrarie. |
enable_dockerfile_builds |
true |
Consenti agli sviluppatori di compilare il codice sorgente dai file Dockerfile. |
enable_custom_buildpacks |
true |
Consente agli sviluppatori di specificare buildpack esterni nelle loro applicazioni. |
enable_custom_stacks |
true |
Consentire agli sviluppatori di specificare stack personalizzati nelle loro applicazioni. |
Esempio:
featureFlags: |
disable_custom_builds: false
enable_dockerfile_builds: true
enable_some_feature: true