在Spring项目中可以将变量从docker env发送到yml文件吗?

时间:2019-08-28 15:09:33

标签: spring spring-boot docker

我想在docker YML configuration的春季项目environment variable中设置变量,而不使用Docker Compose。

1 个答案:

答案 0 :(得分:0)

要在spring项目中使用环境变量,首先,需要在docker容器中进行设置。

在Docker容器中设置ENV:

Docker run -e LOGGING_LEVEL_ROOT="info" -e PROFILE="production" -it your_image

现在,您可以在Spring项目YML配置中使用LOGGING_LEVEL_ROOT

logging:
  level:
    root: ${LOGGING_LEVEL_ROOT}

spring:
  profiles: ${PROFILE}
  

请注意,由于存在application.properties和application.yml文件   接受Spring样式的占位符($ {…}),Maven过滤是   更改为使用@ .. @占位符。 (您可以通过设置一个   Maven属性称为resource.delimiter。)

oot-features-external-config-placeholders-in-properties