2016-12-08 5 views
0

Pour le projet à base de printemps, par exemple, il y a config (eureka de eureka.properties), config (Zuul de zuul.properties), config feindre (feign.properties) etc ..printemps nuage config meilleure pratique?

Et therea sont multiples environnements tels que dev, test, mise en scène, comme application-dev.properties, application-prod.properties. Après l'introduction de la configuration du nuage de printemps au projet, nous pouvons garder tout le fichier de configuration dans le repo git, mais comment bien organiser ces fichiers de configuration? et minimiser la configuration du projet client de cloud cloud?

+0

Les mêmes règles pour le chargement des propriétés spécifiques à l'environnement (c'est-à-dire 'application.properties' et' application- [profile] .properties') s'appliquent aux propriétés chargées à partir du serveur de configuration. Il s'applique également à 'bootstrap.properties' et' bootstrap- [profile] .properties' ... –

+0

@ M.Deinum oui, pour les différents env, il peut utiliser l'approche application- [profile] .properties, merci. –

Répondre

1

Il semble que je mis la compréhension de la configuration des nuages ​​de printemps au début, avec la documentation

Le service HTTP a des ressources sous la forme:

/{application}/{profile}[/{label}] 
/{application}-{profile}.yml 
/{label}/{application}-{profile}.yml 
/{application}-{profile}.properties 
/{label}/{application}-{profile}.properties 

où la « demande » est injectée comme spring.config.name dans l'application> SpringApplication (c'est-à-dire ce qui est normalement "application" dans une application Spring Start régulière), "profile" est un profil actif (ou une liste de propriétés séparées par des virgules), et> "label" est un label git optionnel (par défaut "master".)

Avec la configuration des nuages ​​de printemps mécanisme intégré, la configuration des nuages ​​de printemps exposera toutes les propriétés que les ressources REST, alors où:

  • demande est le projet client de démarrage du printemps spring.application.name
  • profil est le spring.profiles.active dans le projet client de démarrage du printemps
  • étiquette est le nom de la branche git où git git est SPECIF ic par le serveur de configuration de nuage de printemps, par ex. spring.cloud.config.server.git.uri

le client peut GET toutes les propriétés contre les règles ci-dessus.

Normalement, pour un projet client de démarrage du printemps, juste besoin de config du serveur de configuration nuage de printemps comme:

spring: 
    application: 
    name: eureka 
    cloud: 
    config: 
     uri: http://localhost:8888 
    profiles: 
    active: dev, prod 

Ainsi, le client GET toutes les propriétés: eureka-dev.yml et eureka-prod.yml dans le serveur de configuration nuage de printemps.