今からのnode.js事始め[準備編]
今回は ubuntu12.04 に node.js の開発環境を整えてみます。一応、aptitude
からインストールすることもできますけど、この記事を書いてる段階では v0.6.12 と結構古いバージョンが入っちゃいます。また、http://nodejs.org/download/ からバイナリーパッケージをダウンロードしてインストールすることもできますけど、node.js は開発速度が早いので creationix/nvm · GitHub などのマネージャからインストールした方が良さげです。
前に挙げた nvm のページにもインストール方法が掲載されてますが、git が入っていれば
$ git clone git://github.com/creationix/nvm.git ~/nvm $ . ~/nvm/nvm.sh
で nvm
コマンドが使えるようになります。node.js のインストールは nvm install [バージョン]
で実行します。
$ nvm install v0.8.20 ######################################################################## 100.0% Now using node v0.8.20
インストールが成功すると自動的にそのバージョンの node use
も合わせて実行してくれるので、そのまま利用できます。
その時点でインストール可能な node.js のバージョンを確認したい場合、nvm ls-remote
で確認できます。以下のように結果が返ってきます。
$ nvm ls-remote v0.1.14 v0.3.5 v0.6.19 v0.1.15 v0.3.6 v0.6.20 v0.1.16 v0.3.7 v0.6.21 v0.1.17 v0.3.8 v0.7.0 v0.1.18 v0.4.0 v0.7.1 v0.1.19 v0.4.1 v0.7.2 v0.1.20 v0.4.2 v0.7.3 v0.1.21 v0.4.3 v0.7.4 v0.1.22 v0.4.4 v0.7.5 v0.1.23 v0.4.5 v0.7.6 v0.1.24 v0.4.6 v0.7.7 v0.1.25 v0.4.7 v0.7.8 v0.1.26 v0.4.8 v0.7.9 v0.1.27 v0.4.9 v0.7.10 v0.1.28 v0.4.10 v0.7.11 v0.1.29 v0.4.11 v0.7.12 v0.1.30 v0.4.12 v0.8.0 v0.1.31 v0.5.0 v0.8.1 v0.1.32 v0.5.1 v0.8.2 v0.1.33 v0.5.2 v0.8.3 v0.1.90 v0.5.3 v0.8.4 v0.1.91 v0.5.4 v0.8.5 v0.1.92 v0.5.5 v0.8.6 v0.1.93 v0.5.6 v0.8.7 v0.1.94 v0.5.7 v0.8.8 v0.1.95 v0.5.8 v0.8.9 v0.1.96 v0.5.9 v0.8.10 v0.1.97 v0.5.10 v0.8.11 v0.1.98 v0.6.0 v0.8.12 v0.1.99 v0.6.1 v0.8.13 v0.1.100 v0.6.2 v0.8.14 v0.1.101 v0.6.3 v0.8.15 v0.1.102 v0.6.4 v0.8.16 v0.1.103 v0.6.5 v0.8.17 v0.1.104 v0.6.6 v0.8.18 v0.2.0 v0.6.7 v0.8.19 v0.2.1 v0.6.8 v0.8.20 v0.2.2 v0.6.9 v0.9.0 v0.2.3 v0.6.10 v0.9.1 v0.2.4 v0.6.11 v0.9.2 v0.2.5 v0.6.12 v0.9.3 v0.2.6 v0.6.13 v0.9.4 v0.3.0 v0.6.14 v0.9.5 v0.3.1 v0.6.15 v0.9.6 v0.3.2 v0.6.16 v0.9.7 v0.3.3 v0.6.17 v0.9.8 v0.3.4 v0.6.18 v0.9.9
実際はインストール済みのバージョンは青色など色を変えて表示してくれます。
ちなみにこのままだとサーバへ繋ぐ度に . ~/nvm/nvm.sh
と nvm use [バージョン]
を実行する必要が出てくるので、.bashrcに
source $HOME/nvm/nvm.sh nvm use 0.8.20 >/dev/null
を追記しておくと良いでしょう。この場合、使用する node.js のバージョンは 0.8.20 に固定されますが、
source $HOME/nvm/nvm.sh nvm use 0.8 >/dev/null
とすると0.8系で最新のバージョンが利用でき、
source $HOME/nvm/nvm.sh nvm alias default 0.8.18 >/dev/null
としておくと 0.8.18 が利用できるようになった上で、 0.8.18 には “default” でエイリアスが指定されるようになるので、以降 node.js のバージョンを切り替えても
$ nvm use default Now using node v0.8.18
と、nvm use default
でエイリアス指定した 0.8.18 を呼び戻せるようになります。とりあえず、
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-type': 'text/plain'}); res.end('Hello World.\n'); }).listen(8124, '0.0.0.0'); console.log('Server running at http://localhost');
と記述したファイルを
- test.js などと命名した上で保存
- そのファイルを作成したディレクトリから
node test
を実行 - ブラウザで http://localhost:8124/ へアクセス(node.js の環境構築先が localhost の場合)
これでブラウザに “Hello World.” と表示されれば無事 node.js のインストールは完了です。
次は node.js で開発し始めると何かとお世話になる npm について。npm は node.js をインストールするとセットで自動的にインストールされます。なので、node -v
でバージョンが返ってくる状態なら通常 npm
コマンドも有効になってるはずです。試しに npm -v
を実行すると
$ npm -v 1.2.11
と npm のバージョンが返ってきます。
npm は Node Packaged Modules の略でその名の通り node.js のパッケージ管理ツールです。npm help
を確認してみると npm には色々なコマンドの存在を確認できますが、よく利用するのは
npm install パッケージ名
-
指定したパッケージをインストールします。パッケージ名に続けて
@バージョン
を追記して実行すると指定のバージョンでインストールできます。なお、指定したパッケージが依存するパッケージも自動的にインストールされます。また、
-g
オプションを付加するとグローバルインストールとなり、npm が存在する場所へインストールされます。例えば express という node.js のWebアプリケーションフレームワークがありますが、これをnpm install -g express
でグローバルインストールすると、express が入った mode_modules ディレクトリにパスが通ってない場所からも express のスケルトン作成のためのコマンドが実行できるようになります。 npm list
- 実行したディレクトリから見てパスの通っているパッケージの一覧を返します。node.jsインストールの際に合わせてインストールされるパッケージや
-g
オプション付きでインストールしたパッケージは含みません。それらのリストを見たい場合はnpm list -g
を実行します。 npm update <パッケージ名>
- インストール済みのパッケージを最新バージョンへアップデートします。パッケージ名は半角スペース区切りで複数指定可能で、
npm update outdated
とすることで最新バージョンでない全てのパッケージを一括アップデートすることもできます。 npm uninstall パッケージ名
- 指定したパッケージをアンインストールします。
npm search 検索したい文字列
- パッケージレジストリから”検索したい文字列”を検索します。パッケージ名を検索しようとしてもパッケージ名だけにヒットするとは限らないので、ちょっと使いにくいかも。
といったところになるんでしょうか。