Spring/SpringBoot (JPA)

[스프링부트] 개발서버 운영서버 하나의 설정파일로 실행하기(application.yml)

keartt 2024. 11. 22. 10:08
반응형

스프링부트 기준

application.yml 파일 하나를 두고 운영, 개발, 로컬 환경에서 실행하는 방법

 

 

yml 파일 설정방법

yml 파일을 열고 --- 전에는 공통으로 사용할 설정을 넣어주고
그 아래에는 포트 db url 등 달라지는 값들을 넣어준다

 

그리고 최초 --- 전에 profiles active 에 기본적으로 (옵션 안넣으면) 실행될 이름을 지정해줌

아래의 각 설정들에 spring - config - activate - on - profiles 에 원하는 이름을 지정해준다.

 

 

예시

spring:
    profiles:
        active: local
    application:
        name: keart_project
    datasource:
        hikari:
            maximum-pool-size: 4
        username: postgres
        password: 1234
    jpa:
        hibernate:
            ddl-auto: none
        properties:
            hibernate:
                show_sql: true
---
# 로컬
server:
    port: 8887
spring:
    config:
      activate:
          on-profile: local
    datasource:
        url: jdbc:postgresql://localhost:5432/postgres
---
# 개발
server:
    port: 8888
spring:
    config:
        activate:
            on-profile: dev
    datasource:
        url: jdbc:postgresql://localhost:5432/postgres
---
# 운영
server:
    port: 8889
spring:
    config:
        activate:
            on-profile: prod 
    datasource:
        url: jdbc:postgresql://localhost:5432/postgres

 

 

실행방법

1. IntelliJ

인텔리제이의 경우 Run configuration 에서 Active profieles 입력해주면댐 이름으로

2. Server

서버에서의 경우 실행할때 (자바 명령어에서 옵션을 주면댐)

java -jar -Dspring.profiles.active=dev *.jar
반응형