まずはvagrantのboxを作成します。今回はcentos6.5にしてみました。
$ vagrant box add centos65 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box
$ vagrant init centos65
$ vagrant up
$ vagrant ssh
$ vagrant init centos65
$ vagrant up
$ vagrant ssh
 
vagrant にログインしたらアップデートと
$ sudo yum -y update
つづいて、nginxのインストール。
$ sudo yum -y install nginx
$ sudo chkconfig nginx on
$ sudo service nginx start
Starting nginx: [ OK ]
$ sudo chkconfig nginx on
$ sudo service nginx start
Starting nginx: [ OK ]
 
とりあえず、DocumentRootを変更してみます。DocumentRootはvagrantのhomeディレクトリに変更します。
$ sudo vi /etc/nginx/conf.ddefault.conf
#
# The default server
#
server {
    listen       80 default_server;
    server_name  _;
    #charset koi8-r;
    #access_log  logs/host.access.log  main;
    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;
    location / {
        #root   /usr/share/nginx/html;
        root    /home/vagrant;
        index  index.html index.htm;
    }
    error_page  404              /404.html;
    location = /404.html {
        root   /usr/share/nginx/html;
    }
    省略
}
パーミッションを変更して適当なhmtlを配置する。nginxをリスタートして表示されればOK!
$ chmod 701 vagrant/
$ sudo service nginx restart
$ sudo service nginx restart
 
リバースプロキシの設定をします。今回はvagrantで設定しているIPアドレスのポート8080にアクセスしたらnode.jsの方に流れるように設定します。
$ sudo view /etc/nginx/conf.d/virtual.conf
 
次の内容を追記します。
server {
    listen 8080;
    server_name localhost:8080;
    proxy_set_header            X-Real-IP           $remote_addr;
    proxy_set_header            X-Forwarded-For     $proxy_add_x_forwarded_for;
    proxy_set_header            Host                $http_host;
    proxy_redirect              off;
    proxy_max_temp_file_size    0;
    location / {
        autoindex   off;
        proxy_pass  http://localhost:3000;
    }
}
 
続いてVagrant環境にnode.jsをインストールします。今回はnvmを使用してインストールします。
$ git clone https://github.com/creationix/nvm.git ~/.nvm
 
インストールが完了したら
$ source ~/.nvm/nvm.sh
今回は最新のv0.12.0をインストールし、実行時にもバージョンを指定できるようにしておきます。
$ nvm install v0.12.0
$ nvm use v0.12.0
$ nvm alias default v0.12.0
$ nvm use v0.12.0
$ nvm alias default v0.12.0
 
あとはnode.jsでアプリケーションを作成して、ポート3000で起動すればOK。
vagrantで指定したIPアドレスにアクセスすれば、node.jsのアプリケーションが表示される。
おすすめ書籍