Raspberry Pi でWebサーバを立てよう【Node.js】
はじめに
Raspberry Piは2013年にイギリスのRaspberry Pi財団がコンピューター教育向けに開発したマイコンボードです。
安価で小型にもかかわらず、パソコン並みの性能を持っており、python等のプログラムでセンサーの制御やカメラでの撮影など幅広い用途に使用できます。
今回はRaspberry PiにNode.jsを利用したWebサーバを立ち上げる方法を紹介したいと思います。
Node.jsとは
Node.js(ノード・ジェイエス) はV8 JavaScriptエンジン上に構築されたJavaScript実行環境の1つである。イベント化された入出力を扱うサーバサイドJavaScript環境であり、Webサーバなどのスケーラブルなネットワークプログラムの記述を意図している。ライアン・ダールによって2009年に作成され、ダールを雇用しているJoyentの支援により成長している。
出典:フリー百科事典『ウィキペディア(Wikipedia)』 Node.js
Node.jsの特徴は、
- サーバ側の処理もjavascriptで書くことができる
- ライブラリが豊富
- 軽量なWebサーバーを構築できる
といったことが挙げられます。
事前準備
- Raspberry Piのセットアップ(OSはRaspberry Pi OS)
- インターネット接続環境
Node.jsとnpmをインストールする
初めに、Node.jsとnpm(Node Package Manager)をインストールします。
ターミナルで以下のコマンドを実行します。
sudo apt install -y nodejs npm
以下のコマンドでバージョンの確認ができます。
Node.js
node -v
npm
npm -v
aptでインストールされたバージョンは古い場合があるため、新しいバージョンを入れる場合は以下を実行します。
- node.jsとnpmの最新の長期安定版をインストール
以下のコマンドで「n」というNodeのバージョン管理を行うパッケージをインストールします。
sudo npm install n -g
以下のコマンドで、「n」を使用してNodeとnpmの長期安定版をインストールします。
sudo n lts
その後、以下のコマンドで最初にインストールした古いNodeとnpmを削除します。
sudo apt purge -y nodejs npm
上記コマンドを実行後、ターミナルを更新しないと変更が適用されないため、ターミナルを閉じて開き直します。
その後、バージョン確認をすると新しい長期安定版が入っていることが確認できます。
ExpressとExpress-Generatorのインストール
ExpressとはNodeでのWebアプリケーションやシステムを開発するのに必要な機能が予め用意された骨組みで、
Express-GeneratorはExpressのアプリケーションを生成するツールです。
まずはExpressをインストールします。
nom install express --save
次にExpress-Generatorをインストールします。
npm install express-generator -g
次のコマンドでバージョンが表示されれば正常にインストールされています。
express --version
Webサーバを立ち上げる
次のコマンドでプロジェクトを作成します。
このコマンドはviewオプションでテンプレートエンジンを変更することができます。
今回はフォルダ名を「testweb」、テンプレートエンジンにPugを指定しています。
express testweb --view=pug
以下のコマンドで作成したプロジェクトフォルダへ移動します。
cd testweb
以下のコマンドでNode.jsで利用するパッケージをインストールします。
npm install
以下のコマンドでサーバを動かします。
npm start
Webサーバーへアクセスする
ブラウザを開き、「http://localhost:3000」にアクセスします。
すると以下のようなサンプルページが表示されます。
おわりに
今回はRaspberry Pi を使ってWebサーバを立てる方法を紹介しました。
今後は、Nodeサーバーを使った簡単なシステムの構築方法をご紹介していきたいと考えています。