Lionにnode.jsの環境を作ってみる
前に1回つくったけど、なんか色々有耶無耶だったので、もっかい色々理解しながら作ってみる
目標
nvmを使って、node.js や npmの管理をできるようにする
nvmのインストール
nvmって何?
node.jsのバージョンマネージャ。ruby における rvm 的なもの
nvm - Node Version Manager - Simple bash script to manage multiple active node.js versions.
インストール
オフィシャルに書いてあるやり方でインストール
$ curl https://raw.github.com/creationix/nvm/master/install.sh | sh % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1202 100 1202 0 0 418 0 0:00:02 0:00:02 --:--:-- 571 Cloning into '/Users/kasei_san/.nvm'... remote: Counting objects: 557, done. remote: Compressing objects: 100% (328/328), done. remote: Total 557 (delta 290), reused 470 (delta 218) Receiving objects: 100% (557/557), 76.38 KiB | 77 KiB/s, done. Resolving deltas: 100% (290/290), done. => Appending source string to /Users/kasei_san/.bash_profile => Close and reopen your terminal to start using NVM
.bash_profileに書いたよ! とか言われたので、設定を.zshrcに移す
# NVM # 複数マシンでzshrcを共有しているので、特定マシンでだけ動作するようにした if sw_vers | grep 10.7 ;then [[ -s /Users/kasei_san/.nvm/nvm.sh ]] && . /Users/kasei_san/.nvm/nvm.sh # This loads NVM fi
シェルを1個起動してみる
$ nvm Node Version Manager Usage: nvm help Show this message nvm install [-s] <version> Download and install a <version> nvm uninstall <version> Uninstall a version nvm use <version> Modify PATH to use <version> nvm run <version> [<args>] Run <version> with <args> as arguments nvm ls List installed versions nvm ls <version> List versions matching a given description nvm ls-remote List remote versions available for install nvm deactivate Undo effects of NVM on current shell nvm alias [<pattern>] Show all aliases beginning with <pattern> nvm alias <name> <version> Set an alias named <name> pointing to <version> nvm unalias <name> Deletes the alias named <name> nvm copy-packages <version> Install global NPM packages contained in <version> to current version Example: nvm install v0.4.12 Install a specific version number nvm use 0.2 Use the latest available 0.2.x release nvm run 0.4.12 myApp.js Run myApp.js using node v0.4.12 nvm alias default 0.4 Auto use the latest installed v0.4.x version
インストールできた
とりあえずnodeの最新版を入れたい
いっぱいある
$ nvm ls-remote
v0.1.14 v0.1.27 v0.1.96 v0.2.4 v0.4.1 v0.5.1 v0.6.3 v0.6.16 v0.7.7 v0.8.7 v0.8.20
v0.1.15 v0.1.28 v0.1.97 v0.2.5 v0.4.2 v0.5.2 v0.6.4 v0.6.17 v0.7.8 v0.8.8 v0.9.0
v0.1.16 v0.1.29 v0.1.98 v0.2.6 v0.4.3 v0.5.3 v0.6.5 v0.6.18 v0.7.9 v0.8.9 v0.9.1
v0.1.17 v0.1.30 v0.1.99 v0.3.0 v0.4.4 v0.5.4 v0.6.6 v0.6.19 v0.7.10 v0.8.10 v0.9.2
v0.1.18 v0.1.31 v0.1.100 v0.3.1 v0.4.5 v0.5.5 v0.6.7 v0.6.20 v0.7.11 v0.8.11 v0.9.3
v0.1.19 v0.1.32 v0.1.101 v0.3.2 v0.4.6 v0.5.6 v0.6.8 v0.6.21 v0.7.12 v0.8.12 v0.9.4
v0.1.20 v0.1.33 v0.1.102 v0.3.3 v0.4.7 v0.5.7 v0.6.9 v0.7.0 v0.8.0 v0.8.13 v0.9.5
v0.1.21 v0.1.90 v0.1.103 v0.3.4 v0.4.8 v0.5.8 v0.6.10 v0.7.1 v0.8.1 v0.8.14 v0.9.6
v0.1.22 v0.1.91 v0.1.104 v0.3.5 v0.4.9 v0.5.9 v0.6.11 v0.7.2 v0.8.2 v0.8.15 v0.9.7
v0.1.23 v0.1.92 v0.2.0 v0.3.6 v0.4.10 v0.5.10 v0.6.12 v0.7.3 v0.8.3 v0.8.16 v0.9.8
v0.1.24 v0.1.93 v0.2.1 v0.3.7 v0.4.11 v0.6.0 v0.6.13 v0.7.4 v0.8.4 v0.8.17 v0.9.9
v0.1.25 v0.1.94 v0.2.2 v0.3.8 v0.4.12 v0.6.1 v0.6.14 v0.7.5 v0.8.5 v0.8.18
v0.1.26 v0.1.95 v0.2.3 v0.4.0 v0.5.0 v0.6.2 v0.6.15 v0.7.6 v0.8.6 v0.8.19
とりあえず、0.8.19入れてみる
nvm install v0.8.19
######################################################################## 100.0%
Now using node v0.8.19
インストール済一覧をチェック
$ nvm ls current: v0.8.19 $ node -v v0.8.19 $ which node /Users/kasei_san/.nvm/v0.8.19/bin/node
よさそう
デフォルトのnodeを決めたい
オフィシャルに、以下の設定をすれば良いと書いてある
To set a default Node version to be used in any new shell, use the alias 'default': nvm alias default 0.6
やってみる
$ nvm alias default 0.8.19 default -> 0.8.19 (-> v0.8.19/)
別シェル開いて、バージョン確認
$ node -v
v0.8.19
よさそう
npmについて
npmのインストール先
npmにはグローバルインストールとローカルインストールがある
グローバルインストールは環境全体に影響して
ローカルインストールはカレントディレクトリにのみ影響するらしい
インストール先の確認
$ npm root -g
/Users/kasei_san/.nvm/v0.8.19/lib/node_modules
$ npm root
/Users/kasei_san/work/node_modules
なるほど
基本的にはローカルインストールですすめることにする