Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何使用.env文件为Springboot应用程序使用环境变量?_Amazon Web Services_Spring Boot_Aws Codepipeline - Fatal编程技术网

Amazon web services 如何使用.env文件为Springboot应用程序使用环境变量?

Amazon web services 如何使用.env文件为Springboot应用程序使用环境变量?,amazon-web-services,spring-boot,aws-codepipeline,Amazon Web Services,Spring Boot,Aws Codepipeline,我正在尝试构建一个连接到DB的Springboot应用程序。我想使用包含敏感内容的.env文件。首先,我将端口更改为8081进行测试。 My.env文件包含以下内容 PORT=8081 server.port=${PORT} My application.properties具有以下内容 PORT=8081 server.port=${PORT} 我有一个无法解析端口的运行时错误,当我不知道如何将.env文件提供给属性时,这是意料之中的 有人能给我指出正确的方向吗 PS:我以端口为例,如

我正在尝试构建一个连接到DB的Springboot应用程序。我想使用包含敏感内容的
.env
文件。首先,我将端口更改为8081进行测试。 My.env文件包含以下内容

PORT=8081
server.port=${PORT}
My application.properties具有以下内容

PORT=8081
server.port=${PORT}
我有一个无法解析端口的运行时错误,当我不知道如何将.env文件提供给属性时,这是意料之中的

有人能给我指出正确的方向吗

PS:我以端口为例,如果成功,我还将使用.env文件设置DB凭据

更新: 我更喜欢使用
.env
文件,因为当使用AWS CodePipeline部署应用程序时,我可以在CodeBuild阶段设置环境变量,在此阶段我将构建jar并最终构建docker映像。像这样的

EnvironmentVariables:
  - Name: PORT
    Value: "{resolve:secretsmanager:DBCredentials:SecretString:port}"

该错误是由java.lang.IllegalArgumentException引起的:无法解析值“${PORT}”中的占位符“PORT”

我认为您有了react方法!但是在spring中,为了使用多个环境,最好按环境设置属性文件或yaml

Ps:文件名必须像
application-{environment name}.properties那样命名,并且必须位于resources文件夹中

对于开发人员: 文件名:
application-dev.properties

server.port=8089
server.port=8090
对于IT: 文件名:
应用程序it.properties

server.port=8089
server.port=8090
application.properties
文件中,我们通常在所有环境之间放置一些共享属性,我们可以添加属性:
spring.profiles.active=dev
//您可以根据需要放置所需的内容。如果您有多个配置文件,可以通过“
”将它们分开


有关更多详细信息,请检查

能否在运行程序时显示错误列表?如果您使用的是GitHub,我假设您不会将凭据保存在那里。你会怎么处理?你说的是安全问题!有很多方法,你可以把一个加密的密码…,如果上面的解决方案解决了你的问题,标记它为解决了关闭问题