studies/Version Control System

Heroku ํ˜ธ์ŠคํŒ… ํ•˜๋Š” ๋ฒ• Cloud Application Platform

Vada Kim 2020. 11. 21. 20:48
728x90
๋ฐ˜์‘ํ˜•

 Github ๊ฐ™์€ ์‚ฌ์ดํŠธ๊ฐ€ ์žˆ๋‹ค. ํ—ค๋กœ์ฟ ๋ฅผ ์•„์‹œ๋Š”๊ฐ€? ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ ์„œ๋น„์Šค์ด๋‹ค. ๋‚˜๋Š” ์›น ํ˜ธ์ŠคํŒ…๋งŒ ์‚ฌ์šฉํ•ด์„œ ๊ทธ๋Ÿฐ์ง€ ์ด ํ”Œ๋žซํผ์— ๋Œ€ํ•ด์„  ์ž˜ ๋ชจ๋ฅธ๋‹ค. ๊ฐ„๋‹จํ•œ ๋ฌด๋ฃŒ ์›นํ˜ธ์ŠคํŒ…์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

 

 ์˜ค๋žœ๋งŒ์— Heroku๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ, ๋ฐ”๋กœ ์›นํ˜ธ์ŠคํŒ… ์—…๋กœ๋“œ ํŒŒ์ผ ํฌ๊ธฐ ๋•Œ๋ฌธ์ด์—ˆ๋‹ค.

 Github ํ˜ธ์ŠคํŒ…์„ ์‚ฌ์šฉํ•˜๋ ค ํ–ˆ๋Š”๋ฐ, ์—…๋กœ๋“œํ•˜๋ ค๋Š” ํŒŒ์ผ ํ•˜๋‚˜์˜ ํฌ๊ธฐ๊ฐ€ ๊ฑฐ์˜ 100MB์— ๊ฐ€๊นŒ์› ๋‹ค. ๋•Œ๋ฌธ์— Github์— ์˜ฌ๋ผ๊ฐ€์ง€ ์•Š์•„์„œ, ํ˜น์‹œ ํ•˜๊ณค Heroku์— ์˜ฌ๋ ค๋ณด์•˜๋”๋‹ˆ ๋˜์—ˆ๋‹ค.

 

 gitHub ์ €์žฅ์†Œ ์ œํ•œ ์šฉ๋Ÿ‰(Repository๋‹น)์€ 1GB, ํŒŒ์ผ ๊ฐœ๋‹น์€ 100MB๋กœ ์•Œ๊ณ  ์žˆ๋‹ค. heroku๋Š” ์ˆœ์„œ๋Œ€๋กœ 500MB, 100MB๋ผ๊ณ  ํ•˜๋Š”๋ฐ, ์™œ Github์—๋Š” ์•ˆ ์˜ฌ๋ผ๊ฐ€๊ณ  Heroku์—๋Š” ์˜ฌ๋ผ๊ฐˆ๊นŒ?(..)

 

 ์•„๋ฌดํŠผ ๋‚˜๋กœ์ฌ Heroku์— ์ž˜ ์˜ฌ๋ผ๊ฐ€ ํ˜ธ์ŠคํŒ… ๋˜๋‹ˆ ๋‹คํ–‰์ด๋‹ค.

 

 

 

1. Heroku ์„ค์น˜


์šฐ์„  heroku ๊นƒ ์ปค๋งจ๋“œ๋ฅผ ๋‹ค์šด๋ฐ›์•„์ค€๋‹ค. CLI๋Š” Command line interface์˜ ์•ฝ์ž๋ผ๊ณ  ํ•œ๋‹ค!

 

devcenter.heroku.com/articles/heroku-cli

 

The Heroku CLI | Heroku Dev Center

The Heroku CLI Last updated 28 October 2020 The Heroku Command Line Interface (CLI) makes it easy to create and manage your Heroku apps directly from the terminal. It’s an essential part of using Heroku. Download and install The Heroku CLI requires Git,

devcenter.heroku.com

์„ค์น˜ ๊ฒฝ๋กœ๋Š” ๊ธฐ๋ณธ ์„ธํŒ…์œผ๋กœ ํ•ด์ค€ ํ›„ Install

์ฝ˜์†”์ฐฝ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

 

2. ์‚ฌ์šฉํ•  ์–ธ์–ด ๋‹ค์šด๋กœ๋“œ


ํ—ค๋กœ์ฟ  ๊ฐœ๋ฐœ์„ผํ„ฐ ํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐ€๋ฉด ํ—ค๋กœ์ฟ  ์„œ๋น„์Šค์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด๋“ค์„ ๋ณด์—ฌ์ค€๋‹ค.

์˜ฌ๋ฆด ํŒŒ์ผ์— HTML5๊ฐ™์€ ๊ธฐ๋ณธ ์›น์–ธ์–ด ์™ธ์— jsp๋‚˜ python๊ณผ ๊ฐ™์€ ๋‹ค๋ฅธ ์–ธ์–ด๊ฐ€ ์‚ฌ์šฉ๋œ๋‹ค๋ฉด ๋”ฐ๋กœ ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์น˜๋ฅผ ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. 

> heroku plugins:install [ํ”Œ๋Ÿฌ๊ทธ์ธ ๋˜๋Š” ์–ธ์–ด]

ํ…Œ์ŠคํŠธ๋กœ ์ž๋ฐ”์™€ ํŒŒ์ด์ฌ์„ ๋‹ค์šด๋ฐ›์•„๋ดค๋‹ค. ํŒŒ์ด์ฌ์€ ์ œ๋Œ€๋กœ ๋‹ค์šด๋ฐ›์•„์กŒ๋Š”์ง€...๋ชจ๋ฅด๊ฒ ๋‹ค

ํŒŒ์ด์ฌ์€ ๋‚ด๊ฐ€ ์ž˜๋ชป ๋‹ค์šด๋ฐ›์€๊ฒƒ์ธ์ง€.. ๊ฒฐ๊ตญ uninstall..

 

 

 

2. ํ˜ธ์ŠคํŒ… ํ•  ์ €์žฅ์†Œ(์•ฑ) ์ƒ์„ฑ


dashboard.heroku.com/apps

 

Heroku

 

dashboard.heroku.com

ํ—ค๋กœ์ฟ  ๋Œ€์‹œ๋ณด๋“œ์—์„œ ๋กœ๊ทธ์ธ(๋˜๋Š” ํšŒ์›๊ฐ€์ž…)์„ ํ•ด์ค€ ํ›„, ์ƒˆ ์•ฑ์„ ๋งŒ๋“ค์ž.

 

 

<์ €์žฅ์†Œ๋ช… ๊ทœ์น™>

  • ์œ ์ผํ•œ ์ด๋ฆ„์ด์–ด์•ผํ•˜๊ณ (์ค‘๋ณตํ—ˆ์šฉX)
  • ๋Œ€๋ฌธ์ž์™€ '-' ์™ธ์˜ ํŠน์ˆ˜๊ธฐํ˜ธ, ๋„์–ด์“ฐ๊ธฐ ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€
  • ์ฒซ๊ธ€์ž์— ์ˆซ์ž ์‚ฌ์šฉ ๋ถˆ๊ฐ€

Choose a region์€ ์•ฑ์ด ๋ณด๊ด€๋˜๋Š” ๋‚˜๋ผ์ธ๋“ฏ ํ•˜๊ณ , pipeline์€ ๋ญ”์ง€ ๋ชจ๋ฅด๋‹ˆ ๋„˜์–ด๊ฐ„๋‹ค.

 

ํ—ค๋กœ์ฟ  ์•ฑ์„ ๊นƒํ—ˆ๋ธŒ์™€๋„ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋“ฏํ•˜๋‹ค!

์šฐ๋ฆฐ ํ—ค๋กœ์ฟ  ๊นƒ์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๋‹ค.

 

๋‹ค์šด๋ฐ›์•˜๋˜ ํ—ค๋กœ์ฟ  ์ปค๋งจ๋“œ์— ๊ฐ€์„œ, ๋‹ค์Œ ๋ช…๋ น์„ ์ž…๋ ฅํ•ด์ค€๋‹ค.

> heroku login

 

์•„๋ž˜๊ณผ ๊ฐ™์€ ๋ฌธ๊ตฌ๊ฐ€ ๋งˆ์ง€๋ง‰์— ๋–ด์„ ๋•Œ 'q'์™€ 'exit'์„ ์ œ์™ธํ•˜๊ณ  ์•„๋ฌด ํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ์ค€๋‹ค.

heroku: Press any key to open up the browser to login or q to exit:

 

๊ทธ๋Ÿผ ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๊ฐ€ ๋œฌ๋‹ค. 

๋กœ๊ทธ์ธ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•œ๋‹ค. ์ด๋ฏธ ๋กœ๊ทธ์ธ ๋œ ํŽ˜์ด์ง€๊ฐ€ ๋ธŒ๋ผ์šฐ์ €์— ์กด์žฌํ•˜๋ฉด ๊ณง๋ฐ”๋กœ ๋กœ๊ทธ์ธ ์ฒ˜๋ฆฌ๊ฐ€ ๋œ๋‹ค.

 

์ปค๋งจ๋“œ์˜ ์ƒํƒœ๊ฐ€ Done์œผ๋กœ ๋ฐ”๋€Œ์—ˆ๋‹ค.

 

 

 

3. ์—…๋กœ๋“œํ•  WAR ํŒŒ์ผ ์ƒ์„ฑ


WAR(Web Application Archive)๋ž€, ์•ฑ ์†Œ์Šค ๋ฐฐํฌ์‹œ ํŽธ๋ฆฌ๋ฅผ ์œ„ํ•œ ์••์ถ• ๋ฐฉ์‹์ด๋ผ๊ณ  ํ•œ๋‹ค. ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ €์žฅ์†Œ์ด์ž ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์••์ถ•ํ•ด ์ €์žฅํ•ด ๋†“์€ ํŒŒ์ผ์ด๋‹ค. 

 

๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์ด ์กฐ๊ธˆ ์ดํ•ด๊ฐ€ ๊ฐ€์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค.

๋จผ์ € ์ฝ˜์†”์—์„œ WAR๋กœ ๋งŒ๋“ค ํด๋”๋กœ ์ด๋™ํ•œ ํ›„ ์•„๋ž˜ ๋ช…๋ น์„ ์ž…๋ ฅํ•œ๋‹ค. 

> jar cvf [WAR๋กœ ๋งŒ๋“ค ํด๋”๋ช…(=ํ˜„์žฌ ํด๋”๋ช…)].war *

 

์ฒ˜๋ฆฌ๊ฐ€ ์™„๋ฃŒ๋œ ํ›„ ํ•ด๋‹น ํด๋”์— ๊ฐ€๋ณด๋‹ˆ war ํŒŒ์ผ์ด ์ž˜ ์ƒ์„ฑ๋˜์—ˆ๋‹ค. ์ด์ œ ์ด warํŒŒ์ผ์„ ๋‹ค๋ฅธ ๊ฒฝ๋กœ๋กœ ์˜ฎ๊ฒจ๋„ ์ƒ๊ด€์—†๋‹ค.

๊ฐ€๊ธ‰์  ๋‹ค๋ฅธ ํด๋”๋กœ ์˜ฎ๊ธธ ๊ฒƒ์„ ์ถ”์ฒœ.

 

 

 

4. Heroku app์— WAR ์—…๋กœ๋“œ(์—…๋ฐ์ดํŠธ)


์ด์ œ ์•ฑ์— WARํŒŒ์ผ์„ ์˜ฌ๋ฆฐ๋‹ค.

> heroku war:deploy [warํŒŒ์ผ์˜ ๊ฒฝ๋กœ/warํŒŒ์ผ๋ช….war] --app [์•ฑ์ด๋ฆ„]

 

์กฐ๊ธˆ ์˜ค๋ž˜ ๊ฑธ๋ฆด ์ˆ˜๋„ ์žˆ๋‹ค.

 

์•ฑ์ด ์˜ฌ๋ผ๊ฐ„ ํ›„ ํ—ค๋กœ์ฟ  ์ปค๋งจ๋“œ์—์„œ ์•ฑ์„ ์‹คํ–‰ํ•ด๋ณผ ์ˆ˜ ์žˆ๋‹ค.

> heroku open --app [์•ฑ์ด๋ฆ„]

ํ˜ธ์ŠคํŒ… ๊ฒฝ๋กœ๋Š” [์•ฑ์ด๋ฆ„].herokuapp.com ์ด๋‹ค.

๋ฌผ๋ก  index ํŒŒ์ผ์ด ์žˆ์„ ๊ฒฝ์šฐ์ด๋‹ค. 

 

[์•ฑ์ด๋ฆ„].herokuapp.com/ํŒŒ์ผ๋ช… ์กฐํšŒ๋„ ๊ฐ€๋Šฅ

 

 

 

devcenter.heroku.com/articles/war-deployment๊ณต์‹๋ฌธ์„œ

728x90
๋ฐ˜์‘ํ˜•