dshimizu/blog

アルファ版

NVMでnode.js環境構築とHello World

はじめに

node.jsはサーバーサイドで実行できるJavaScript環境で昨今利用する人が増えているように感じ僕も最近触り始めましたが、新しいバージョンのリリースが頻繁で、node.jsのバージョンとコードの管理が煩雑になることが多いと思います。 今回は、Node.jsの複数のバイナリバージョンを管理できる NVM(Node Version Manager) を使ってみたいと思います。

その際の手順をまとめておくことにします。

node.jsとは

node.jsはサーバーサイドJavaScript実行環境です。 サーバサイドJavaScriptとは、簡単に言うと、「Webサーバ上でJavaScriptプログラムを動作させ、そのプログラムに処理が要求されるたびに、結果をウェブブラウザに対して送信するようなプログラム」のことです。

NVMとは

NVM(Node Version Manager)は名前の通り Node.js のバージョンを管理するツールです。 Rubyで言うところの rbenv とかに近いと思います。 まずはNVMをインストールして、NVMを利用して node.js をインストールします。

環境

環境

OS Ubuntu 16.04 LTS(4.4.0-21-generic)
NVM(Node Version Manager) 0.32.0
node.jsバージョン v4.6.0

NVMのインストール

NVMのインストール

公式手順をもとにインストールを行います。

インストールスクリプトを取得してそのままbashに渡して実行します。

$ curl -o- https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash

使っているシェルの設定ファイルに以下を追記します。

bashの場合は以下です。

$ vim ~/.bashrc
### 以下を追記
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

設定ファイルを再読み込みします。

$ source ~/.bashrc

これでNVMがインストールできました。

NVMを使う

以下のコマンドで詳しい使い方を参照できます。

$ nvm help

いくつか使ってみます。 以下のコマンドでNVMのバージョンを確認できます。

$ nvm --version
0.32.0

以下のコマンドで利用可能な node.js のバージョンを確認できます。

$ nvm ls-remote
        v0.1.14
        v0.1.15
        v0.1.16
         :
         :

node.jsのインストール

NVMでnode.jsをインストールします。 インストールには nvm install コマンドを使います。

インストールされたnode.js関連ファイルは~/.nvm/versions/node/{Node.jsバージョン}に配置されます。

長期安定版(LTS)のインストール

Node.js はアップデートが頻繁にあり、かなり多くのバージョンが存在します。 まずは最新の長期安定版(LTS)のNode.jsをインストールしてみます。

$ nvm install v4.6.0

安定版(stable)のインストール

最新安定版(stable)のNode.jsをインストールしてみます。

$ nvm install v6.8.1

インストール済みnode.jsの確認/切り替え

インストール済みnode.jsを確認するにはnvm listまたはnvm lsのコマンドを実行します。

$ nvm list
         v4.6.0  
->       v6.8.1  
default -> 4.6.0 (-> v4.6.0)
node -> stable (-> v6.8.1) (default)
stable -> 6.8 (-> v6.8.1) (default)
iojs -> N/A (default)
lts/* -> lts/argon (-> v4.6.0)
lts/argon -> v4.6.0

利用するNode.jsのバージョンを指定します。

% nvm use 4.6.0
Now using node v4.6.0 (npm v2.15.9)
% node -v
v4.6.0

デフォルトで使用するnode.jsのバージョンを指定するには、下記コマンドを実行します。

$  nvm alias default 4.6.0
default -> 4.6.0 (-> v4.6.0)

Node.jsでHello World

以下のようなコードを書いて保存します。 ファイル名は適当に hello-world.js とかにしておきます。 保存する場所はとりあえず今はどこでも良いです。

const http = require('http');

const hostname = '127.0.0.1'; // <-node.jsを実行するサーバのIPの指定
const port = 15000;           // <-ポートの指定

http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello World\n');
}).listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

実行してみます。

$ node hello-world.js
Server running at http://127.0.0.1:15000/

ブラウザから http://127.0.0.1:15000/ アクセスして Hello World と表示されれば問題なしです。

おわりに

NVMのインストールとNVMを使ったnode.jsのインストールを行いました。 なお同じようなツールとして nodebrew があります。nodeberwはまだ使ったことがないのでどちらが良いのかわかりません。

参考