SpringBoot 2.1.3.RELEASE: не удалось прочитать свойства среды из application.properties - PullRequest
0 голосов
/ 30 апреля 2019

Я пытаюсь прочитать переменные окружения из моего application.properties domains.integrationService=${INTEGRATION_SERVICE_DOMAIN:http://localhost:1337}.

Свойство env установлено внутри моего docker-контейнера (проверил его), но каким-то образом Spring не может прочитать его из .properties. Таким образом, заканчивается настройка http://localhost:1337.

Это нормально работало в других проектах, использующих версию SpringBoot 2.0.0.

Я думаю, что они отказались от этой функции. Я не хочу жестко кодировать эти значения в моем .properties в проекте.

Мой .env в докере.

INTEGRATION_SERVICE_DOMAIN=https://dummy.com

Моя команда запуска Docker

docker run -d -p 1100:1100 --restart unless-stopped --env-file ~/.env --network=\"host\" -v /var/log/dummy-project:/usr/src/app/logs -v /tmp:/usr/src/app/tmp --name dummy-project

Дайте мне знать, если есть какие-либо решения.

1 Ответ

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

Просто доверьтесь Spring Boot, чтобы выполнить работу должным образом из коробки.

Как объяснено в документации , PropertySource сначала прочитает файл свойств, а затем переопределитзагруженные значения вместе со значениями из переменных среды (и других мест, смотрите документацию по всем возможностям и порядку приоритетов).

Так что, если ваш application.properties содержит:

domains.integrationService=http://localhost:1337

, вы можетепереопределите это значение по умолчанию, установив переменную окружения с аналогичным именем.В этом примере как минимум domains.integrationService и DOMAINS_INTEGRATION_SERVICE переменные окружения будут автоматически выбраны, чтобы переопределить значение из вашего application.properties.Однако он не будет переворачивать слова сам по себе, поэтому INTEGRATION_SERVICE_DOMAIN не будет работать.

Попробуйте (вне докера) с:

export DOMAINS_INTEGRATION_SERVICE=https://dummy.com
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...