bouine est configuré via un fichier YAML passé avec --config. Les variables d’environnement sont développées (${VAR}, ${VAR:-default}) avant le décodage.
listen :
http : ":8080"
https : ":443"
admin : ":9000"
storage :
hot_max_bytes : 1GiB
upstream_pools :
- name : app
targets : ["app.default.svc:8080" ]
health :
active :
path : /healthz
interval : 10s
routes :
- match : { path_prefix : /api/ }
pool : app
cache :
ttl_default : 60s
stale_while_revalidate : 10s
stale_if_error : 300s Pages dans cette section Référence des champs listenChamp Par défaut Description http":8080"Adresse du listener HTTP/1.1 https— Adresse du listener HTTPS (H1) admin":9000"Adresse du serveur d’administration
storageChamp Par défaut Description hot_max_bytes1GiBTaille maximale du tier hot en RAM warm_dir— Répertoire du tier warm (mmap) warm_max_bytes— Taille maximale du tier warm sur disque
upstream_pools[]Champ Description nameNom du pool, référencé par routes[].pool targets[]Liste des adresses des serveurs d’origine health.activeHealth check actif (path, interval, timeout, unhealthy_threshold) health.passiveHealth check passif (consecutive_5xx, eject_for)
routes[]Champ Description match.path_prefixCorrespondance par préfixe de chemin match.hostCorrespondance par hôte match.methodsCorrespondance par méthodes HTTP poolNom du upstream pool cache.ttl_defaultTTL par défaut si l’origine n’envoie pas d’en-têtes de fraîcheur cache.ttl_overrideOverride le TTL interne de bouine cache.stale_while_revalidateDurée pendant laquelle le contenu périmé est servi pendant la revalidation cache.stale_if_errorDurée pendant laquelle le contenu périmé est servi en cas d’erreur d’origine cache.negative_ttlTTL pour les réponses d’erreur cachables cache.jitter_percentPourcentage aléatoire appliqué au TTL cache.enabledActive ou désactive le cache pour cette route (par défaut: true)
clusterChamp Description enabledActive le clustering modestrong ou eventualjoin[]Liste des adresses seed pour le gossip tlsConfiguration mTLS pour la communication entre peers
tlsChamp Description certs[]Liste des certificats (cert_file + key_file) min_versionVersion TLS minimale (par défaut: 1.2)
cloudflareChamp Description zone_idID de zone Cloudflare api_tokenJeton API Cloudflare (permission Cache Purge) asyncMode asynchrone (par défaut: true) propagateQuelles opérations propager (purge, ban, refresh)
tracingChamp Description endpointPoint de terminaison OTLP (format host:port, pas URL) service_nameNom du service pour les traces (par défaut: “bouine”) sampling_rateTaux d’échantillonnage (0.0 à 1.0)
adminChamp Description tokenJeton bearer pour l’authentification de l’API d’administration