まずは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のアプリケーションが表示される。
おすすめ書籍