Google Cloud Platform でNode.jsのインストールとNginxを導入する

Pocket
LINEで送る

最近、メディアの構築などのお仕事をいただく事が増えてきまして。。せっかくなら今後のことも想定してスケールラブルな環境でウェブの構築ができなくては、と思い勉強しました。

Google Cloud Platformとは?

こちらの記事がとてもわかりやすかったので参考に。

Google Cloud Platform
https://cloud.google.com/

[参考]【2015年版】AWS ユーザが Google Cloud Platform に15分で入門する!
http://qiita.com/FumihikoSHIROYAMA/items/205fa3aebd20b3a1bace

上記URLの記事の、「Compute Engineを使ってみよう!」で、Compute Engineの有効化->VMインスタンスの作成->SSH接続までをわかりやすく解説してありますので、この記事ではterminalにてssh接続をした後から解説します。

ちなみに、VMインスタンスの環境は CentOS7 でローカルの環境はOS Xです。
では早速、Node、Nginxの導入までを説明します。

※開発環境によって異なります。僕はgulpを導入したりするのでNodeを入れますが、必要の無い方はNginxの導入まで飛ばしても問題ないです。

Compute Engineの環境

今回、Compute EngineのOS等は「CentOS」を利用しています。
Debian系のDebian GNU/Linux 8 (jessie)を利用した場合などでコマンドが異なるケースのコマンドの違いについては、各コマンドの下に記載します。

NVMのインストール

nvmのインストールのために、Gitを導入します。
※nvmはNode.js や ions のバージョン管理ができるコマンドです。

yum -y install git

※debian系のOSの場合は、yumの代わりに「apt-get」を使ってください。

Gitでnvmのレポジトリをインスタンスの中に複製します。

git clone git://github.com/creationix/nvm.git ~/.nvm

nvm.shを実行してnvmコマンドを使えるようにします。

source ~/.nvm/nvm.sh

nvmでNode.jsのインストール

nvmコマンドを使って、インストールが可能なNode.js や iojsのバージョンを一覧で取得します。

nvm ls-remote

Node.jsは細かなバージョンアップも繰り返されていますが、その中にも公式の決定で安定版と長期安定版の2種類があります。バージョン毎の細かな違いについては割愛しますが、基本的には安定版をインストールするようにすれば問題は少ないかと思います。

Nodeの欲しいバージョンをインストール

nvm install 0.12.17 // バージョンを指定してインストールする場合
nvm install --lts=argon // 長期安定版をインストールする場合
nvm install --lts=boron // 安定版をインストールする場合

インストールが完了したら、次回からnvmを動作させた時に自動で特定のバージョンのNodeコマンドが使えるように、Defaultの設定を書き換えます。

nvm alias default v0.12.17
// インストールしたNodeのバージョンに書き換えてください。

この状態だと、ログインする度に[$ source ~/.nvm/nvm.sh ]を実行しないとNodeコマンドが使えないので、ログイン時にNvmのファイルがあった場合に上記コマンドを自動で実行してくれるように、bashファイルにプログラムを追加します。

// redhat系(CentOS)の場合はこっち
vi ~/.bash_profile
// debian系の場合はこっち
vi ~/.bashrc

追記する内容は下記になります。追記するのはどこでも良いのですが、誤って条件分岐の途中などに書いてしまうと上手く動作しなくなってしまいますので、よくわからない場合はファイルの一番下にペーストするのが良いかと思います。

if [[ -s ~/.nvm/nvm.sh ]];
 then source ~/.nvm/nvm.sh
fi

これでnvmとnode.jsの導入は完了です。

nginxの導入

nginexリポジトリのインストール

yum install http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

nginexのパッケージインストール

yum install --enablerepo=nginx nginx

nginxのスタート

nginx

これで、IPアドレスで確認するとウェブサイトが表示されます。

nginxのストップ

nginx -s stop

それ以外のコマンドはこちらが参考になります。

[参考]
nginx コマンド超シンプル早見表
http://qiita.com/katzueno/items/44e02db2f1bfa0de5860

nginxのデフォルトの設定だと、参照されるディレクトリが
「/usr/share/nginx/html」
に設定されています。

編集をしたい場合は、下記のコマンドを叩いて編集してください。

vi /etc/nginx/conf.d/default.conf

[参考]CentOS7 に Nginx をインストールする
https://www.saintsouth.net/blog/install-nginx-on-centos7/

まとめ

ドメインを反映させたり、ディレクトリを変えたりと他にも対応することはあると思いますが、
Google Cloud Platform で nvm node.jsのインストールとnginx導入までの設定はこれで完了です。

SNSでもご購読できます。