
23B. AWS ์ฝ์์์ Elastic Beanstalk Node.js ์ ํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌํ๊ธฐ
23B. AWS ์ฝ์์์ Elastic Beanstalk Node.js ์ ํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌํ๊ธฐ ๊ด๋ จ

AWS ์ฝ์์์ Elastic Beanstalk node.js ์ ํ๋ฆฌ์ผ์ด์ ์ Elastic Beanstalk ํ๊ฒฝ์ ๋ฐฐํฌํด๋ณด๊ฒ ์ต๋๋ค.

๊ฐ๋จํ ์น ํ์ด์ง๋ฅผ ์์ฑํฉ๋๋ค. ๋ฉ๋ชจ์ฅ์ด๋ ๊ธฐํ ํ ์คํธ ํธ์ง๊ธฐ๋ฅผ ์ด๊ณ ์๋์ ๊ฐ์ด ์์ฑํ ๋ค app.js๋ก ์ ์ฅํฉ๋๋ค.
app.js
var express = require('express')
, http = require('http')
, app = express();
app.get(['/', '/index.html'], function (req, res){
res.send('Hello Elastic Beanstalk');
});
http.createServer(app).listen(process.env.PORT || 3000);
Node.js npm ํจํค์ง ์ฌ์ฉ์ ์ํด ์๋์ ๊ฐ์ด ์์ฑํ ๋ค package.json
๋ก ์ ์ฅํฉ๋๋ค.
package.json
{
"name": "hello",
"description": "Hello Elastic Beanstalk",
"version": "0.0.1",
"dependencies": {
"express": "4.4.x"
}
}
.app.js
ํ์ผ๊ณผ package.json
ํ์ผ์ zip์ผ๋ก ์์ถํฉ๋๋ค. ์ ๋ exampleapp.zip
์ผ๋ก ์์ถํ์ต๋๋ค.

exampleapp-env
)์ ํด๋ฆญํฉ๋๋ค.
[Upload and Deploy]
๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.์ ๋ก๋ ๋ฐ ๋ฐฐํฌ ์ฐฝ์ด ํ์๋ฉ๋๋ค.

[ํ์ผ ์ ํ]
๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
exampleapp.zip
ํ์ผ์ ์ ํํ๊ณ [์ด๊ธฐ]
๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.ํ์ผ์ ์ด๋ฉด Version label์ ํ์ผ๋ช
์ด ๊ทธ๋๋ก ์
๋ ฅ๋ฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์
์ ์
๋ก๋ํ ๋๋ง๋ค Version label์ด ๋ฌ๋ผ์ ธ์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ exampleapp1
์ ์
๋ ฅํฉ๋๋ค(๋ค์ ๋ฒ์๋ exampleapp2
exampleapp3
๋ฑ์ผ๋ก ์
๋ ฅํฉ๋๋ค).

[Deploy]
๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.์ ์ ๊ธฐ๋ค๋ฆฌ๋ฉด Health๊ฐ Updating์์ Green์ผ๋ก ๋ฐ๋๊ณ , Elastic Beanstalk ์ ํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌ๊ฐ ์๋ฃ๋ฉ๋๋ค.

<ํ๊ฒฝ ์ด๋ฆ>.elasticbeanstalk.com
๋งํฌ๋ฅผ ํด๋ฆญํฉ๋๋ค.
app.js
์ ๋ด์ฉ์ด ํ์๋ฉ๋๋ค.์ด์ฒ๋ผ AWS ์ฝ์์์ Elastic Beanstalk ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋จํ๊ฒ ๋ฐฐํฌํ ์ ์์ต๋๋ค.