株式会社インデペンデンスシステムズ横浜

システム開発エンジニアの西田五郎が運営しております。新規開発案件のご依頼をお待ちしております。

*

Raspberry PiでのNode.jsの導入(その1)インストールと動作確認

      2015/03/03

Node.jsとは、Node.js 日本ユーザグループのサイトから引用させて頂きますと、「Node.jsは高速でスケーラブルなネットワークアプリケーションを 簡単に構築するためにChrome の JavaScript 実行環境 上に構築されたプラットフォームです。」とあります。サーバサイドのJavaScriptの代名詞とも言えるかと思います。

このNode.jsをRaspberry Piで導入して使ってみます。Web系でサーバサイドということでは伝統的にはApache等のHTTPサーバを導入してということになるかと思いますが、Raspberry Piの性能(ここではModel B+です)を考えると動作が軽い方が適しているので Node.jsを使ってみることにしました。今回はインストールと動作確認です。

nodebrewでのインストール
Node.jsのインストールにはいろいろな方法があるようです。またバージョンアップが頻繁に行われているためなのかバージョン管理の方法も複数あるようです。ここでは簡単と思われたnodebrewというバージョン管理ツールを使いました。その方法です。

nodebrew自体のインストール
以下のGitHubサイトの通りです。
$ curl -L git.io/nodebrew | perl – setup
以下はTeraTermでのスクリーンショットです。以降、同様にTeraTermでのスクリーンショットです。
0001
パスの追加の指示があるので追加します。ここでは、.bashrcの最後に追記して、.bashrcの再読み込みを実行しました。
0002
0003

以上でnodebrew自体のインストールは完了です。確認の意味で nodebrew ls-remoteと実行しますと以下のようにnode.jsのバージョンの一覧が表示されます。
0005

node.jsのインストール
次にnode.jsのインストールです。まずインストールの方法ですが、バイナリインストールとビルドインストールがあります。バイナリインストールの方が速いですが、バージョンによってはRaspberry Pi用のバイナリファイルがない場合があるようです。バージョンに制約があって仕方がない場合はビルドインストールを使い、制約がない場合はバイナリファイルが存在するバージョンをインストールするという方法が現実的とも思います。(※ここではビルドは1時間以上経過しても完了しなかったのでやめました。)

ここでは以下のようにインストールしました。
$ nodebrew install-bainary 0.11.0

以下のスクリーンショットでは、v0.11.16をインストールしようとして見つからなかったのでv0.11.0で実行しています。(※その間のバージョンは試していないです。)
0003

インストールが完了してもまだnode.jsは使えません。(※スクリーンショットの状態です。)node.jsのバージョンを以下のように設定します。
$ nodebrew use 0.11.0
0008
以上でnode.jsのインストールも完了です。

これで以下のスクリーンショットの状態のように、node -vでバージョンが確認出来ます。これでnode.jsが使えます。
0004

node.jsの動作確認
やはりHelloWorld的なスクリプトを実行してみます。Node.js 日本ユーザグループのサイトから引用させて頂きます。

var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');

これをexample.jsに保存して、node exampleと実行します。
0009

ここではそのままlocalhost上での実行となっているのでリモートデスクトップから以下のように確認出来ました。
0012

今回はここまでとします。次回はもう少しWebサーバ的なプログラムを作ってみます。


 - Node.js, Raspberry Pi

AdSense

AdSense

  関連記事

Raspberry PiでAC100V(ソリッド・ステート・リレー)制御

Raspberry PiでAC100VのON/OFF制御を試してみました。今回そ …

Raspberry Piをモニターとキーボードなしで導入する(その1)SSHでのログインまで

Raspberry Piをモニターとキーボードなしで導入する方法についてです。 …

Raspberry Piでタッチスクリーン付3.5インチTFTを使ってみた

Raspberry Piでタッチスクリーン付モニタを使ってみました。PiScre …

Node.jsでRaspberryPiのGPIOを使う(その1)デバイスドライバでLED

Node.jsでRaspberryPiのGPIOを使ってみます。今回はデバイスド …

Raspberry PiでC言語版Lチカを試す(その2)レジスタを操作する

Raspberry PiでC言語を使ったLEDの点灯、消灯(いわいるLチカ)を試 …

Raspberry Pi 3でのコンソールケーブル利用と初期設定

Raspberry Pi 3 でコンソールケーブルを利用する方法と初期設定につい …

Raspberry PiでのNode.jsの導入(その2)Webサーバ的なプログラム

Raspberry PiでのNode.jsの導入の2回目です。前回はインストール …

Raspberry Piをモニターとキーボードなしで導入する(その2)初期設定とリモートデスクトップ

(※2017/02/19 最新のRaspbian Jessie OSでは、初期状 …

無線マイコン ToCoStickのシリアル通信専用アプリを使ってみた

無線マイコンの ToCoStick(トコスティック)のシリアル通信専用アプリを使 …

Raspberry PiでC言語版Lチカを試す(その1)デバイスドライバ利用

Raspberry PiでC言語を使ったLEDの点灯、消灯(いわいるLチカ)を試 …