EC2でnode.js + nginx + pm2 + express4のnodeアプリを稼働させる
node.js server on EC2
まずは、node.jsの環境を整えます。
今回、利用するバーションは、v0.10.36
です。
利用するnode.jsのコードはgitリモートレポジトリ上にあるものとします。
$ sudo yum update -y
$ sudo yum install git gcc-c++ make openssl-devel -y
$ git clone git://github.com/creationix/nvm.git .nvm
$ source ~/.nvm/nvm.sh
$ nvm install v0.10.36
$ nvm alias default v0.10.36
$ vim ~/.bash_profile
if [[ -f ~/.nvm/nvm.sh ]]; then
source ~/.nvm/nvm.sh
_nodejs_use_version="v0.10.36"
if nvm ls | grep -F -e "${_nodejs_use_version}" >/dev/null 2>&1 ;then
nvm use "${_nodejs_use_version}" >/dev/null
export NODE_PATH=${NVM_PATH}_modules${NODE_PATH:+:}${NODE_PATH}
fi
unset _nodejs_use_version
fi
Setup nginx
$ sudo yum install nginx -y
$ nginx -v
$ sudo chkconfig nginx on
$ sudo service nginx start
$ sudo vim /etc/nginx/conf.d/node-app.conf
upstream node-app {
server localhost:3000;
}
server {
listen 80;
server_name 10.211.55.2;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
proxy_pass http://node-app/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
$ sudo service nginx restart
アプリケーションのセットアップ
$ git pull origin master nodeapp
$ cd nodeapp
$ npm install
node daemon use pm2
最後にnodeアプリをデーモンとして動かすための設定です。
今回は、express4を利用しているので、サーバーとして起動させるには、./bin/www.jsのようにする必要があります。(元々は、./bin/wwwというファイルになっているので、コピーしてください。)
$ npm install -g pm2
$ pm2 start ./bin/www.js -i max
Author And Source
この問題について(EC2でnode.js + nginx + pm2 + express4のnodeアプリを稼働させる), 我々は、より多くの情報をここで見つけました https://qiita.com/daikissdd/items/a85775efb3d9142d318f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .