Spring Boot profiles real,dev maven 배포하기 DEV / WEB
2020-09-10 posted by sang12
Spring Boot를 사용하다보면 real과 개발을 구분하기 위해 profiles를 많이 사용하게 됩니다.
하지만 배포할때마다 spring.profiles.active=real, spring.profiles.active=dev와 같은 형태로 변경하면서 배포하기엔 너무 불편하겠죠? 그래서 환경변수를 이용하여 배포하는 방법을 알아보겠습니다.
일단, pom.xml에 사용할 profile 환경변수를 등록합니다.
-pom.xml
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<build.profile.id>dev</build.profile.id>
<profileActive>dev</profileActive>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<build.profile.id>prod</build.profile.id>
<profileActive>prod</profileActive>
</properties>
</profile>
</profiles>
activeByDefault가 true로 설정되어있는게 기본으로 셋팅 됩니다. 그래서 스프링부트에 내장되어있는 톰캣으로 프로젝트를 올릴때는, 개발로 올라라게 dev를 true로 설정하였습니다. 그리고 여기에서 중요한 부분은 <profileActivie> <-- 이부분입니다. application.properties에 해당 변수명으로 등록을 해줘야합니다. 아래 처럼 @profileActive@ 을 등록해줘야합니다.
-application.properties
spring.profiles.active=@profileActive@
그리고 maven Build 설정에서
Goals: clean install -DskipTests -Pdev, clean install -DskipTests -Pprod 형태로 빌드하고 만들어진 war파일에서 application.properties를 보면 -Pdev, -Pprod 옵션에 따라 개발과 리얼이 변경되는것을 확인 할 수 있습니다 :)
1 | |
2024-11-01 13:13:46 |
1
답글