Spring Config uri - PullRequest
       17

Spring Config uri

0 голосов
/ 03 апреля 2019

Я настроил bootstrap.yml для весеннего конфига

spring:
  application:
    name: cce-auth
  cloud:
    config:
      uri: http://temp.com:8888

Работает нормально, но мне нужно значение URI динамически, например, если я опубликую это .war в тестовой среде, этот URL должен быть http://test-temp.com:8888.

Итак, для этого у меня есть решение: создайте файл config.txt на сервере и используя поток ввода-вывода reed / запишите эту строку в bootstrap.yml.

Но проблема в загрузке, пружина загружается http://localhost:8888, прежде чем я пишу в bootstrap.yml.

Так что моя причина в том, чтобы динамически создавать URI для сервера конфигурации. У тебя есть идея?

1 Ответ

0 голосов
/ 03 апреля 2019

Определить active_profile в bootstrap.yml файле

spring:
  profiles:
    active: ${activatedProperties}

Затем создать bootstrap-${activatedProperties}.yml для каждой среды и т. Д. bootstrap-dev.yml, bootstrap-pre.yml, bootstrap-prod.yml

Например,:

spring:
  application:
    name: servicename_prod
  cloud:
    config:
      uri: https://admin:123456@test.com:8888
server:
  port: 8443

добавить плагин в файл pom.xml:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-config</artifactId>
</dependency>

При запуске Java определите для него среду: например, запустите со средой prod.

java -Dserver.port=8443 -Dspring.profiles.active=prod -jar ....
...