λ°˜μ‘ν˜•

 

 

 

 

 

πŸ™ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λΉŒλ“œ

 

 

🧁 IntelliJ IDEλ₯Ό μ΄μš©ν•œ λΉŒλ“œ

 

Spring BootλŠ” Gradle λΉŒλ“œ νˆ΄μ„ μ΄μš©ν•΄μ„œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λΉŒλ“œν•  수 μžˆλŠ” νˆ΄μ„ μ§€μ›ν•œλ‹€.

IntelliJ μ—μ„œ Gradle 탭을 λˆ„λ₯΄κ³ 

Task ➑️ build ➑️ bootjar or build

둜 μ†μ‰½κ²Œ λΉŒλ“œν•  수 μžˆλ‹€.

 

λΉŒλ“œκ°€ μ •μƒμ μœΌλ‘œ μ™„λ£Œλ˜λ©΄

build/libs 디렉토리에 Jar 파일이 μƒμ„±λœλ‹€.

μƒμ„±λœ Jar 파일이 λ‘œμ»¬μ—μ„œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‹€ν–‰κ°€λŠ₯ν•œ μ‹€ν–‰νŒŒμΌμ΄λ‹€.

 

 

🧁 Gradle Taskλ₯Ό μ΄μš©ν•œ λΉŒλ“œ

 

IntelliJ 같은 IDEκ°€ μ„€μΉ˜λ˜μ§€ μ•Šμ€ ν™˜κ²½μ—μ„œ λΉŒλ“œλ₯Ό ν•΄μ•Όν•˜λŠ” κ²½μš°λ„ μžˆλ‹€.

CLI ν™˜κ²½μ—μ„œ λΉŒλ“œν•  λ•ŒλŠ” ν”„λ‘œμ νŠΈ μ΅œμƒμœ„ κ²½λ‘œμ—μ„œ

./gradlew build

λ₯Ό μž…λ ₯ν•΄μ£Όλ©΄ λΉŒλ“œλœλ‹€.

BUILD SUCCESSFUL

라고 μ νžŒλ‹€λ©΄ λΉŒλ“œκ°€ μ™„λ£Œλœ 것이닀.

 

 

 

πŸ™ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ‹€ν–‰

 

java -jar [jar파일λͺ…].jar

μž…λ ₯ν•˜λ©΄ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ μ‹€ν–‰λœλ‹€.

 

 

 

πŸ™ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ 배포

 

Spring Boot 기반의 μ‹€ν–‰ κ°€λŠ₯ν•œ Jar(Executable Jar)을 μ„œλ²„μ— λ°°ν¬ν•΄λ³΄μž

 

 

🧁 전톡적인 μ„œλ²„ 배포 방법

 

Spring Boot 기반의 Executable jar νŒŒμΌμ„ μ„œλ²„μ— λ°°ν¬ν•˜κΈ°

scp, sftp 같은 ν‘œμ€€ μœ λ‹‰μŠ€ νˆ΄μ„ μ‚¬μš©ν•΄μ„œ μ„œλ²„λ‘œ κ°„λ‹¨νžˆ μ „μ†‘ν•œλ‹€.

μ„œλ²„λ‘œ μ „μ†‘λœ JarνŒŒμΌμ€ JVM이 μ„€μΉ˜λœ ν™˜κ²½μ΄λΌλ©΄ μ–΄λ””μ„œλ“  μ‰½κ²Œ μ‹€ν–‰ν•  수 μžˆλ‹€.

 

 

🧁 ν΄λΌμš°λ“œ μ„œλΉ„μŠ€λ₯Ό μœ„ν•œ 배포 방법

 

Executable Jar νŒŒμΌμ€ 특히 ν΄λΌμš°λ“œ ν™˜κ²½μ—μ„œ μ†μ‰½κ²Œ 배포할 수 μžˆλ‹€.

 

 

▢️ PaaS(Platform as a Service)

 

λŒ€ν‘œμ  μ˜ˆμ‹œ : Cloud Foundry, Heroku

 

▢️ IaaS(Infrastructure as a Service)

  • Executable Jar λŠ” AWS Elastic Beanstalk, AWS Container Registry, AWS Code Deploy 같은 μ„œλΉ„μŠ€λ₯Ό μ΄μš©ν•΄μ„œ μ†μ‰½κ²Œ 배포가λŠ₯ν•˜λ‹€.
  • Microsoftμ—μ„œλ„ Azure ν΄λΌμš°λ“œ μ„œλΉ„μŠ€μΈ Azure Spring Cloud, Azure App Service μ—μ„œ 배포 κ°€λŠ₯ν•˜λ‹€.
  • Google Cloud μ—μ„œλ„ Executable Jar 파일 배포λ₯Ό μœ„ν•œ μ—¬λŸ¬κ°€μ§€ μ˜΅μ…˜μ„ μ œκ³΅ν•œλ‹€.

 

▢️ CI / CD ν”Œλž«νΌμ„ μ‚¬μš©ν•œ 배포

  • Github Actions, Circle CI
  • AWSλ‚˜ Azure 같은 ν΄λΌμš°λ“œ μ„œλΉ„μŠ€μ— Executable Jar νŒŒμΌμ„ μžλ™ λ°°ν¬ν•˜λ„λ‘ ꡬ성할 수 μžˆλ‹€.

 

 

 

 

 

 

 

 

λ°˜μ‘ν˜•