Kf utilise un ConfigMap Kubernetes nommé config-defaults
dans l'espace de noms kf
pour stocker les paramètres de configuration à l'échelle du cluster.
Ce document explique sa structure et ses champs.
Structure du fichier ConfigMap config-defaults
Le configmap contient trois types de paires clé/valeur dans le champ .data
:
- Les clés de commentaire précédées de
_
contiennent des exemples, des notes et des avertissements. - Les clés de chaîne contiennent des valeurs en texte brut.
- Les clés d'objet contiennent une valeur JSON ou YAML encodée sous forme de chaîne.
Exemple :
_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
Exemple de section
La section "Exemple" sous la clé _example
contient des explications pour d'autres champs et exemples. Les modifications apportées à cette section n'ont aucun effet.
Registre de conteneurs de l'espace
La propriété spaceContainerRegistry
est une valeur sous forme de texte brut qui spécifie le registre de conteneurs par défaut que chaque espace utilise pour stocker les images créées.
Exemple :
spaceContainerRegistry: gcr.io/my-project
Domaines de cluster d'espace
La propriété spaceClusterDomains
est un tableau YAML d'objets de domaine encodé sous forme de chaîne.
Chaque espace du cluster ajoute tous les éléments du tableau à sa liste de domaines auxquels les développeurs peuvent lier leurs applications.
Champs | |
---|---|
domain |
Nom de domaine mis à disposition. Peut contenir l'une des substitutions suivantes :
|
gatewayName |
(facultatif)
Remplace les passerelles Istio auxquelles il est lié.
La valeur par défaut est |
Exemple :
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 du compilateur de cycle de vie V2
La propriété buildpacksV2LifecycleBuilder
contient la version du binaire builder
de Cloud Foundry utilisé pour exécuter les builds d'un buildpack V2.
La valeur est une référence Git. Pour utiliser une version spécifique, ajoutez un symbole @
suivi d'un hachage Git SHA à la fin.
Exemple :
buildpacksV2LifecycleBuilder: "code.cloudfoundry.org/buildpackapplifecycle/builder@GIT_SHA"
Buildpacks du lanceur de cycle de vie V2
La propriété buildpacksV2LifecycleLauncher
contient la version du binaire launcher
de Cloud Foundry intégré à chaque application d'un buildpack V2.
La valeur est une référence Git. Pour utiliser une version spécifique, ajoutez un symbole @
suivi d'un hachage Git SHA à la fin.
Exemple :
buildpacksV2LifecycleLauncher: "code.cloudfoundry.org/buildpackapplifecycle/launcher@GIT_SHA"
Liste des buildpacks V2
La propriété spaceBuildpacksV2
est un tableau YAML encodé sous forme de chaîne qui contient une liste ordonnée de buildpacks par défaut, qui sont utilisés pour créer des applications compatibles avec le processus des buildpacks V2.
Champs | |
---|---|
name |
Un nom court que les développeurs peuvent utiliser pour faire référence au buildpack dans leurs fichiers manifestes d'application. |
url |
URL utilisée pour récupérer le buildpack. |
disabled |
Utilisé pour empêcher l'exécution de ce buildpack. |
Liste des piles V2
La propriété spaceBuildpacksV2
est un tableau YAML encodé sous forme de chaîne qui contient une liste numérotée de piles pouvant être utilisées avec les builds compatibles avec Cloud Foundry.
Champs | |
---|---|
name |
Un nom court que les développeurs peuvent utiliser pour faire référence à la pile dans les fichiers manifestes de leur application. |
image |
URL de l'image de conteneur à utiliser comme pile. Pour en savoir plus, consultez la page https://kubernetes.io/docs/concepts/containers/images. |
Liste des piles V3
La propriété spaceStacksV3
est un tableau YAML encodé sous forme de chaîne qui contient une liste ordonnée de piles pouvant être utilisées avec les builds Cloud Native Buildpack.
Champs | |
---|---|
name |
Un nom court que les développeurs peuvent utiliser pour faire référence à la pile dans les fichiers manifestes de leur application. |
description |
Description courte de la pile affichée lors de l'exécution de |
buildImage |
URL de l'image de conteneur à utiliser comme compilateur. Pour en savoir plus, consultez la page https://kubernetes.io/docs/concepts/containers/images. |
runImage |
URL de l'image de conteneur à utiliser comme base pour toutes les applications créées avec . Pour en savoir plus, consultez la page https://kubernetes.io/docs/concepts/containers/images. |
nodeSelector |
(facultatif) NodeSelector utilisé pour indiquer les nœuds sur lesquels les applications créées avec cette pile peuvent s'exécuter. |
Exemple :
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
Utiliser par défaut la pile V3
La propriété spaceDefaultToV3Stack
contient une valeur entre guillemets true
ou false
indiquant si les espaces doivent utiliser des piles V3 si aucune n'est spécifiée par un utilisateur.
Flags de fonctionnalité
La propriété featureFlags
contient une carte YAML d'indicateurs de commutateur de fonctionnalité encodée sous forme de chaîne, qui peut activer et désactiver les fonctionnalités de Kf.
Les noms d'options non compatibles avec Kf seront ignorés.
Nom d'option | Par défaut | Objectif |
---|---|---|
disable_custom_builds |
false |
Désactiver l'accès des développeurs à des pipelines de compilation Tekton arbitraires. |
enable_dockerfile_builds |
true |
Autoriser les développeurs à compiler le code source à partir de Dockerfile. |
enable_custom_buildpacks |
true |
Autoriser les développeurs à spécifier des buildpacks externes dans leurs applications. |
enable_custom_stacks |
true |
Autoriser les développeurs à spécifier des piles personnalisées dans leurs applications. |
Exemple :
featureFlags: |
disable_custom_builds: false
enable_dockerfile_builds: true
enable_some_feature: true