ποΈ λ°°ν¬ μ€λΉ: νλ‘λμ
νκ²½μ μν λΉλ νλ‘μΈμ€
React μ± λΉλ
- λͺ©μ : νλ‘λμ
νκ²½μ λ°°ν¬νκΈ° μν΄ React μ±μ μ΅μ ννκ³ , λͺ¨λ νμν νμΌμ νλμ λλ ν 리μ λͺ¨μΌλ κ²
- λ°©λ² :
- μ΄ λͺ
λ Ήμ μ½λλ₯Ό μ΅μν(minification)νκ³ , λͺ¨λ μ μ νμΌμ build λλ ν 리μ λͺ¨μ
npm run build # or yarn build
- μ£Όμμ¬ν :
- νκ²½ λ³μ (μ: API μλν¬μΈνΈ)λ νλ‘λμ
νκ²½μ λ§κ² μ€μ ν΄μΌ ν¨
Java Spring Boot μ± ν¨ν€μ§
- λͺ©μ : Spring Boot μ±μ μκ° μ€ν κ°λ₯ν JAR λλ WAR νμΌλ‘ ν¨ν€μ§νμ¬ λ°°ν¬ μ€λΉ
- λ°©λ² :
- ν¨ν€μ§ κ³Όμ μμ νμν λͺ¨λ μμ‘΄μ±μ ν¬ν¨νλ μ€ν κ°λ₯ν JAR νμΌμ΄ μμ±
mvn package # Maven μ¬μ© μ
gradle build # Gradle μ¬μ© μ
- μ£Όμμ¬ν :
- νλ‘λμ
νκ²½μ λ§λ λ°μ΄ν°λ² μ΄μ€ μ€μ , ν¬νΈ μ€μ λ±μ νκ²½ μ€μ μ΄ νμ
λ°°ν¬ μ§μ λꡬ : AWS, Heroku, Docker
AWS (Amazon Web Services)
λ°°ν¬λ₯Ό μν 곡κ°λ§ λμ¬, νλ‘μ νΈμ κ΄ν λͺ¨λ μ
ν
μ μ§μ ν΄μΌν¨ -> IaaS
- μ₯μ :
- λμ νμ₯μ±κ³Ό μ μ°μ±
- EC2, S3, RDS λ± λ€μν μλΉμ€ μ 곡
- λΉμ©μ΄ μ λ ΄
- λ¨μ :
- μ€μ κ³Ό κ΄λ¦¬κ° 볡μ‘ν¨
Heroku
μμ±ν μλ² λ°°ν¬ νλ«νΌ, μ½λλ§ μλ€λ©΄ λλ©μΈ(URL)κ³Ό κΈ°ν μμλ€μ μ 곡 -> Paas
- μ₯μ :
- μ¬μ©μ΄ κ°νΈνκ³ λΉ λ₯Έ λ°°ν¬ κ°λ₯
- λ¬΄λ£ ν°μ΄ μ 곡
- λ¨μ :
- νμ₯μ±κ³Ό 컀μ€ν°λ§μ΄μ§μ μ ν (ν¨ν€μ§ λ²μ Ό ...)
- λΉμ©μ΄ λΉμ
Docker
μννΈμ¨μ΄ 컨ν
μ΄λν νλ«νΌ, μ΄λ€ νκ²½μ΄λ μΌκ΄λ λμμ 보μ₯, ν΄λΌμ°λ μλΉμ€ λͺ¨λΈλ³΄λ€λ κ°λ° λ° λ°°ν¬μ ν¨μ¨μ±μ λμ΄λ κΈ°μ
- μ₯μ :
- νκ²½ μΌκ΄μ± 보μ₯
- μ¬λ¬ νκ²½μμ μ½κ² λ°°ν¬ κ°λ₯
- λ¨μ :
- 컨ν
μ΄λ κ΄λ¦¬μ λν μΆκ° μ§μ νμ
- 보μ μ€μ μ μ£Όμ νμ
CI/CD νμ΄νλΌμΈ: Jenkins, GitHub Actions
CI/CD (Continuous Integration, μ§μ ν΅ν© / Continuous Deployment, μ§μλ°°ν¬)
Jenkins
Javaλ‘ μμ±λ μ€νμμ€ μλν μλ²μ΄λ©°, CI/CD νμ΄νλΌμΈμ ꡬμΆνλ λ° λ리 μ¬μ©
- μ₯μ :
- κ°λ ₯ν μλνμ 컀μ€ν°λ§μ΄μ§ κ°λ₯
- λ€μν νλ¬κ·ΈμΈ μ 곡
- λ¨μ :
- μ€μ κ³Ό κ΄λ¦¬κ° 볡μ‘ν¨
- μ΄κΈ° μ€μ μ μκ° μμ
GitHub Actions
GitHubμ CI/CD νλ«νΌμΌλ‘, GitHub μ μ₯μλ₯Ό κΈ°λ°μΌλ‘ μννΈμ¨μ΄ κ°λ° μν¬νλ‘μ°λ₯Ό μλν
- μ₯μ :
- GitHub μ μ₯μμ ν΅ν© μ©μ΄
- κ°λ¨νκ³ λΉ λ₯Έ μ€μ
- λ¨μ :
- 볡μ‘ν μν¬νλ‘μ°μ νκ³
- Jenkinsμ λΉν΄ λκ·λͺ¨ μμ€ν
μμ μ νμ