nvm で作る Node.js の環境構築(+ Hello world)
はじめに
react の環境構築をしようとしたところ、npm が必要でした。
npm は Node.js のパッケージ管理ツールで ruby でいう gem みたいなものでしょうか。
ということで、今更感満載ですが、Node.js をインストールして npm コマンド実行出来るようにして、ついでに Node.js で Hello world やってみようと思います。
環境
Mac OS X Yosemite 10.10.5
git 2.5.4
nvm のインストール
nvm は Node.js のバージョン管理マネージャです。
Node.js を複数バージョンインストールして簡単に切り替えできるツールです。
ruby でいう rbenv や rvm みたいなものですかね。
インストール
$ git clone https://github.com/creationix/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
パスを通す
$ . ~/.nvm/nvm.sh $ nvm --version 0.30.2
以下を、~/.bashrc 等に追記して、起動時に読込むようにします。
export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
バージョンアップ
nvm をバージョンアップする場合は、以下のコマンドを実行します。
cd ~/.nvm && git pull origin master && git checkout `git describe --abbrev=0 --tags
Node.js のインストール
続けて Node.js をインストールします。
インストールバージョン確認
$ nvm ls-remote
v0.1.14
...
v5.4.0
v5.4.1
v5.5.0
奇数バージョンは最新機能版、偶数バージョンは長期サポート版
ということらしいので、僕の環境では特に安定版を使う理由はありませんが、せっかくなので両方入れてみます。
インストール
$ nvm install 4.2 Downloading https://nodejs.org/dist/v4.2.6/node-v4.2.6-darwin-x64.tar.gz... ######################################################################## 100.0% WARNING: checksums are currently disabled for node.js v4.0 and later Now using node v4.2.6 (npm v2.14.12) $ nvm install 5.5 ######################################################################## 100.0% WARNING: checksums are currently disabled for node.js v4.0 and later Now using node v5.5.0 (npm v3.3.12)
WARNING 出てます?
バージョン確認
$ node -v v5.5.0 $ npm -v 3.3.12
インストール確認
ls コマンドを使うと、インストール済みのバージョンを確認することが出来ます。
$ nvm ls nvm ls v4.2.6 -> v5.5.0 node -> stable (-> v5.5.0) (default) stable -> 5.5 (-> v5.5.0) (default) iojs -> N/A (default)
両方インストールされたことが確認できますね。
バージョンの切替え
use コマンドを使用して、使用するバージョンを切替えることができます。
$ nvm use 4.2.6 Now using node v4.2.6 (npm v2.14.12) $ node -v v4.2.6 $ npm -v 2.14.12
デフォルトバージョンの指定
毎回 use でバージョン指定をしなくてもいいよう、デフォルトで使用するバージョンを指定しておきます。
$ nvm alias default 5.5.0
Hellow Node.js
ついでに、Hello world やっておきます。
サンプルファイル作成
以下のコードをhello.js というファイル 名で保存します。
const http = require('http'); const hostname = '127.0.0.1'; const port = 1337; 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.js
Server running at http://127.0.0.1:1337/
ブラウザで http://127.0.0.1:3000/ にアクセスすると、以下の画面が表示されるはずです。
まとめ
nvm をインストールしてから同じようなツールとして nodebrew があることを知りました。
nvm は bash 以外と相性が悪いらしいので、z-shell 使ってる人は nodebrew 使ってるみたいですね。
nvm の環境壊して nodebrew に切り替えるのは面倒なので、差し当たり nvm をそのまま使おうと思います。
何かのタイミングで切り替えるかもしれないけど。
始めて Node.js のコードを見ましたが、Hello world だけだとよく分からないですね。
使う機会があれば本格的に勉強すると思うけど、Elixir / Phoenix の方が個人的には気になります。
いずれにしても、また別の機会に使ってみようと思います。
これで npm コマンドが使えるようになったので、React に必要なパッケージをインストール出来るようになりました。
ちなみに、npm と似たもので bower があるけど、両者の違いが分からない・曖昧な人はこの記事がすっきりさせてくれるはずです!
qiita.com
それでは!
参考
https://github.com/creationix/nvm
http://liginc.co.jp/web/programming/node-js/85318