애플리케이션 빌드/실행/배포

2023. 3. 10. 23:04Spring

애플리케이션 빌드

-> IntelliJ IDE를 이용한 빌드

-> Gradle 빌드 툴에서 bootJar나 build를 더블 클릭하면 된다.

-> 정상적으로 빌드가 종료되면 build/libs 디렉토리에 Jar파일이 생성된다.

-> Jar 파일은 로컬 pc에서 실행 가능한 애플리케이션 실행 파일이다.

※ build vs bootJar

build : build 태스크를 실행하면 Gradle에서 빌드와 관련된 모든 task들을 실행한다. 또한 실행 가능한 Jar파일 이외에 plain Jar파일을 하나 더 생성한다.

bootJar : 빌드와 관련된 모든 task를 실행하는 것이 아니라 애플리케이션의 실행 가능한 Jar파일을 생성하기 위한 Task만 실행한다.

 

Gradle Task를 이용한 빌드

-> IntelliJ IDE가 없다면 Gradle Task 명령어를 콘솔에 입력하여 빌드를 진행할 수 있다.

-> 콘솔창을 템플릿 프로젝트 root 걍로에서 오픈하여 '$ ./gradlew build'를 입력하면 빌드가 진행되고, 빌드 완료 시 build/libs 디렉토리에 Jar파일이 생성된다.

 

◎ 애플리케이션 실행

-> jar 파일이 있는 build/libs 로 이동해서 아래와 같이 명령어를 입력하면 실행된다.

 

◎ 프로파일 적용

-> 프로파일을 애플리케이션에 적용하면 애플리케이션이 빌드 될 때, 로컬에서는 로컬의 db 설정 정보를 실행파일에 포함하고, 서버 환경에는 서버 환경의 db 설정 정보를 실행 파일에 포함시켜서 실행할 수 있다.

프로퍼티 적용

-> 위 그림과 같이 application.yml 파일 외에 application-local.yml, application-server.yml 파일을 만든다.

-> application.yml에는 일반적으로 애플리케이션 실행 환경과 상관 없는 공통 정보들을 설정한다.

 

-> application-local.yml에는 로컬 환겨에서 사용할 정보들을 설정한다. 

 

-> application-server.yml에는 서버환경에서 필요한 정보를 설정한다. 실제 서버나 AWS 같은 클라우드에서 해당 애플리케이션을 실행해야 한다면 application-server,yml에 설정한다.

 

※ IntelliJ IDE에서 프로파일 적용

-[Edit Configurations]를 클릭하여 [Program arguments]에 '--spring.profiles.active=local'을 입력하여 활성화할 프로파일을 local로 지정한다. local은 application-local.yml에서 local에 해당한다.

 

※ 빌드된 실행파일에 프로파일 적용

- 프로파일 기능은 빌드된 실행 파일을 어느 환경에서 실행할 지 결정할 떄 주로 사용된다.

- 실행 파일 실행시키는 명령어 뒤에 '--spring.profiles.active=local'를 붙이면 된다.

 

◎ 배포

-> Spring Boot 기반의 Jar 파일은 scp나 sftp 같은 표준 유닉스 툴을 이용해 서버로 전송할 수 있다.

-> 클라우드 서비스를 통해서 배포 가능하다.

-> CI/CD 플랫폼을 이용해 AWS와 같은 클라우드 서비스에 Executable Jar파일을 자동 배포하도록 구성할 수 있다.

'Spring' 카테고리의 다른 글

Spring Security의 웹 요청 처리  (0) 2023.03.16
Spring Security  (0) 2023.03.16
TDD(Test Driven Development)  (0) 2023.03.08
Mockito  (0) 2023.03.08
단위 테스트(Unit Test)  (0) 2023.03.06