스프링 부트 애플리케이션의 환경 변수
properties
파일입니다.spring.datasource.url=${JDBC_URL}
spring.datasource.username=${DB_USERNAME}
spring.datasource.password=${DB_PASSWORD}
이와 같이 애플리케이션 시작 시 전달할 수 있는 동적 구성으로 갖고자 하는 애플리케이션 고유의 속성이 더 많을 수 있습니다. 개발, 스테이징, 프로덕션과 같은 다양한 환경에서 이러한 기능을 갖기 위해. 스프링 부트는 option 을 제공하여 다른 환경에 대해 다른 값을 가진 환경 특정 파일을 갖습니다.
다음은 장단점이 있는 개발자가 따르는 몇 가지 일반적인 관행입니다.
별도의 프로필 파일이 있는 경우 올바른 프로필 세부 정보가 전달되도록 각각에 대해 별도의 시작 스크립트가 필요할 수 있습니다. 비밀 또는 구성 변경을 위해 빌드 시 파일을 복사하는 경우 적용하려면 패키지를 다시 빌드해야 할 수 있습니다.
12factor 앱에 따르면 환경에 구성을 저장하는 것이 좋습니다.
이를 어떻게 달성할 수 있습니까?
spring.datasource.url=${JDBC_URL}
spring.datasource.username=${DB_USERNAME}
spring.datasource.password=${DB_PASSWORD}
위의 여러 가지 방법으로 도움이
컨테이너로 실행할 때
애플리케이션을 컨테이너로 실행하는 경우 애플리케이션을 시작하는 동안 환경 변수를 전달해야 합니다. 이는 배포 파이프라인에서 처리할 수 있습니다. 값이 변경되면 컨테이너를 다시 시작하는 것으로 충분합니다.
뚱뚱한 항아리로 실행할 때
응용 프로그램을 일반 jar로 실행하는 경우 가장 좋은 방법은 환경 변수를 호스트 시스템의 일부로 설정하고 응용 프로그램을 시작하는 것입니다.
로컬 개발/테스트는 어떻습니까?
테스트의 경우 전용 속성 파일을 사용하는 것이 좋습니다. 지역 개발을 위해 우리는 두 가지 방법으로 그것을 할 수 있습니다.
.env
파일이 있고 응용 프로그램을 시작하기 전에 파일source
이 있습니다spring.datasource.username=${DB_USERNAME:username}
.여기서 주목해야 할 핵심은 배포 프로세스입니다. 이러한 스프링 부트 애플리케이션 설정을 위해 배포 파이프라인을 수행하는 방법에 대한 자세한 블로그를 다룰 것입니다.
Reference
이 문제에 관하여(스프링 부트 애플리케이션의 환경 변수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/balaaagi/environment-variables-in-spring-boot-application-3mnc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)