nvmを使ってNode.jsをUbuntuにインストールする手順

はじめに

これまでに何度もNode.jsというものに出くわすことがあったものの、しっかり使ったこともなく良くわかってもいませんでした。ただ、最近そんな状態でもいけなくなり実際に使ってみる必要が出てきたため、まずはWindows10上のUbuntu(Windows Subsystem for Linux)にNode.jsをインストールしてみたのでその手順をメモします。思っていたよりも簡単にインストールできました。

準備と前提

以降の手順はWindows Subsystem for Linux(以降、WSL)のUbuntu16.04で行いました。WSLはインストール済とします。純粋なUbuntuでも同じ手順になると思います。

OS Windows10
インストール先 Windows10上で動作するUbuntu16.04 (Windows Subsystem for Linux)


Ubuntu16.04上の準備として、updateして以下のパッケージをインストールしておきます。

$ sudo apt-get update
$ sudo apt-get install build-essential libssl-dev


nvmのインストール

私はNode.jsのインストールのためにnvm(Node Version Manager)を使用しました。nvmを使うことで、各ディレクトリで使用するNode.jsのバージョンを指定したり、デフォルトで使用するバージョンを指定したりとNode.jsのバージョン管理を行うことができます。なぜこのような一見面倒に感じるバージョン管理ですが、プロジェクトによってはバージョンの違いによって動作に支障が出ることがあり、各プロジェクトによって使用するバージョンを指定したいような場面で役に立ちます。あとは今回のように簡単にNode.jsをインストールしたい場面などです。Rubyのバージョン管理でもrbenvがあり、同じ目的ですね。

nvmのインストールは公式サイト通りに以下のコマンドを実行するだけです。なお、以下のコマンドに含まれるv0.33.11はバージョンなのでその時によって変わっているかもしれません。curlコマンドでインストールを実行するシェルスクリプトを取ってきて、それをbashで実行しています。

$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 12819  100 12819    0     0   5559      0  0:00:02  0:00:02 --:--:--  5561
=> Downloading nvm from git to '/home/username/.nvm'
=> Cloning into '/home/username/.nvm'...
(・・・以下省略・・・)


インストールが完了すると、ホームディレクトリにある~/.bashrcに以下が追記されます。なお、CentOSの場合には同じくホームディレクトリにある~/.bash_profileに追記されていると思います。環境によって異なるため、各自の環境で確認してみてください。

(・・・上省略・・・)
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion


.bashrcを反映させるためにsourceコマンドで再読込します。

$ source ~/.bashrc


これでnvmのインストールは完了です。以下でバージョン確認できます。

$ nvm --version
0.33.11


あとはnvmを使ってNode.jsをインストールします。

nvmでNode.jsをインストールする

はじめにnvmを使ってインストールできるNode.jsのバージョン一覧を表示してみます。

$ nvm ls-remote

 (・・・上省略・・・)
 v8.9.0   (LTS: Carbon)
         v8.9.1   (LTS: Carbon)
         v8.9.2   (LTS: Carbon)
         v8.9.3   (LTS: Carbon)
         v8.9.4   (LTS: Carbon)
        v8.10.0   (LTS: Carbon)
        v8.11.0   (LTS: Carbon)
        v8.11.1   (LTS: Carbon)
        v8.11.2   (Latest LTS: Carbon)
         v9.0.0
         v9.1.0
         v9.2.0
         v9.2.1
         v9.3.0
         v9.4.0
         v9.5.0
         v9.6.0
         v9.6.1
         v9.7.0
         v9.7.1
         v9.8.0
         v9.9.0
        v9.10.0
        v9.10.1
        v9.11.0
        v9.11.1
        v10.0.0
        v10.1.0
        v10.2.0
        v10.2.1
        v10.3.0


上記を見てわかるとおり、LTS版(Long Term Support, 長期サポート版)とそうでないものがあります。通常であればLTS版をインストールするのが無難だと思いますが、私の場合は個人的な使用に限るのでここではLTS版ではなく、最新のv10.3.0をインストールします。
なお、以下の参考サイトさんにNode.jsのバージョンについてわかりやすくまとめてあり参考になると思います。
Node.jsのバージョンによる違い – JavaScript勉強会

以下のようにnvmで10.3.0を指定してインストールします。

$ nvm install 10.3.0
Downloading and installing node v10.3.0...
Downloading https://nodejs.org/dist/v10.3.0/node-v10.3.0-linux-x64.tar.xz...
######################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v10.3.0 (npm v6.1.0)
Creating default alias: default -> 10.3.0 (-> v10.3.0)


10.3.0を使うことを明示的に指定しておきます。

$ nvm use 10.3.0
Now using node v10.3.0 (npm v6.1.0)


nodeのバージョンを確認してみます。

$ node -v
v10.3.0


以下のようにnvmコマンドにlsをつけることで自分の環境にインストールされているNode.jsのバージョン一覧を確認できます。
現在は10.3.0しかないため、以下のように表示されます。

$ nvm ls
->      v10.3.0
default -> 10.3.0 (-> v10.3.0)
node -> stable (-> v10.3.0) (default)
stable -> 10.3 (-> v10.3.0) (default)
iojs -> N/A (default)
lts/* -> lts/carbon (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.14.2 (-> N/A)
lts/carbon -> v8.11.2 (-> N/A)


これでNode.jsのインストールは完了です。試しに、以下の内容をhello.jsというファイル名前で保存します。

console.log("Hello World !!");


そして以下のように実行してみると、Hello Wordl !! と表示されNode.jsが動作していることが確認できます。

$ node hello.js
Hello world !!


まとめ

最近は色々なものをインストールする機会が多いですが、ネット上の情報も多くい作業自体も簡単になっており助かります。Node.jsを使ったことない方でも簡単にインストールできると思います。

SPONSORED LINK

この投稿へのコメント

コメントはありません。

コメントを残す

メールアドレスが公開されることはありません。

この投稿へのトラックバック

トラックバックはありません。

トラックバック URL