Dandy Now!
  • [Spring Boot] application.properties 환경별 설정
    2024년 11월 04일 13시 24분 14초에 업로드 된 글입니다.
    작성자: DandyNow
    728x90
    반응형

    1. application.properties 환경별 설정

    개발 환경, 로컬 환경, 프로덕트 환경에 따라서 application.properties 설정을 각각 달리하여 관리할 수 있다.

    아래 코드는 dev, local, prod로 설정을 관리하는 예이다. resources 폴더 내에 resources-dev, resources-local, resources-prod 폴더를 각각 생성하여 관리하는 방식이다.

    # resources/resources-dev/application.properties
    spring.profiles.active=dev  # 이 속성 값을 추가하여 관리한다!
    
    # application-dev.properties
    db.url=jdbc:mysql://dev-db-url
    db.username=dev-user
    db.password=dev-password

     

    # resources/resources-local/application.properties
    spring.profiles.active=local
    
    # application-local.properties
    db.url=jdbc:mysql://local-db-url
    db.username=local-user
    db.password=local-password

     

    # resources/resources-prod/application.properties
    spring.profiles.active=prod
    
    # application-prod.properties
    db.url=jdbc:mysql://prod-db-url
    db.username=prod-user
    db.password=prod-password

     

    2. 환경별 프로젝트 실행

    2-1. CLI에서 실행하는 경우

    "--spring.profiles.active="에 적용하고자 하는 설정(dev, local, prod)을 붙여 실행한다. 

    java -jar your-app.jar --spring.profiles.active=dev

     

    2-2. VS Code에서 재생 버튼(Run/Debug)을 눌러 실행하는 경우

    .vscode 폴더 안에 launch.json 파일에 "vmArgs" 속성을 추가하면 된다. 아래 코드는 적용 예이다.

    {
      "version": "0.2.0",
      "configurations": [
        {
          "type": "java",
          "name": "Launch Spring Boot",
          "request": "launch",
          "mainClass": "com.example.MainApplication",
          "vmArgs": "-Dspring.profiles.active=local"
        }
      ]
    }

     

    728x90
    반응형
    댓글