Каков правильный синтаксис для передачи переменных среды в application.properties в Spring Boot при создании контейнера Docker? - PullRequest
0 голосов
/ 16 мая 2018

Я бы хотел передать переменные окружения из моего док-контейнера в мой Spring Boot application.properties, когда я запускаю контейнер. У меня есть следующий файл application.properties.

#application.properties
spring.datasource.url=${SPRING_DATASOURCE_URL}
spring.datasource.username=${SPRING_DATASOURCE_USERNAME}
spring.datasource.password=${SPRING_DATASOURCE_PASSWORD}
spring.datasource.driver-class-name=org.postgresql.Driver

Мои команды docker для создания контейнера выглядят следующим образом:

docker run -d -p 8080:8080 -e SPRING_DATASOURCE_URL:'<my url>' -e SPRING_DATASOURCE_USERNAME:'<my username>' -e SPRING_DATASOURCE_PASSWORD:'<my password>' -e --name mycontainer  mycontainer

Контейнер дробится с: Caused by: java.lang.IllegalArgumentException: URL must start with 'jdbc'

Какой будет правильный синтаксис?

1 Ответ

0 голосов
/ 17 мая 2018

В команде docker run есть синтаксическая ошибка:

-e SPRING_DATASOURCE_URL:'<my url>'

Вы должны использовать знак = для назначения переменных среды, а не :

-e SPRING_DATASOURCE_URL='<my url>'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...