這裡介紹如何在樹莓派(Raspberry Pi)中安裝 Node.js 與 MongoDB 資料庫。

Node.js 加上 MongoDB 資料庫是目前很熱門的網頁應用程式架構,但是由於官方並沒有針對 Raspberry Pi 平台提供編譯好的安裝檔,以下我整理了一些比較簡單的安裝方式,讓您可以快速把開發應用程式的環境建立起來。

Node.js

要在 Raspberry Pi 中安裝 Node.js,可以從官方網站上下載原始碼來編譯並安裝,不過這種方式比較花時間。

比較快速的方式是直接下載編譯好的安裝檔來安裝,在 node-arm 的網站上有提供 Node.js 最新版本編譯好的安裝檔,使用這個安裝檔來安裝會快很多。

首先下載打包好的 .deb 檔:

wget http://node-arm.herokuapp.com/node_latest_armhf.deb

安裝 .deb 檔:

sudo dpkg -i node_latest_armhf.deb

最後檢查一下 Node.js 的版本:

node -v

這裡所提供的 Node.js 安裝套件幾乎都是最新的,頂多只會比官方最新版差一點點:
v0.12.6

MongoDB

MongoDB 的安裝則比較麻煩,官方似乎沒有提供適用於 Raspberry Pi 的版本,大部分人都是下載 RickP/mongopi 這個第三方所修改的專案來自己編譯安裝,雖然可以使用,但缺點是他的版本有點舊,但是目前大概也沒有其他比較好的辦法了。

先安裝編譯用的套件:

sudo apt-get install build-essential libboost-filesystem-dev libboost-program-options-dev libboost-system-dev libboost-thread-dev scons libboost-all-dev python-pymongo git

下載原始碼:

git clone git://github.com/RickP/mongopi.git

編譯:

cd mongopi
scons

將 MongoDB 安裝至 /opt/mongo

sudo scons --prefix=/opt/mongo install

設定 PATH,在 ~/.bashrc 中加入:

export PATH=$PATH:/opt/mongo/bin

在 GitHub 上還有幾個類似的專案,如果 RickP/mongopi 不能用的話,也許可以嘗試看看:

另外如果您不想自己編譯的話,以嘗試 Barryrowe/mongo-arm 這個已經編譯好的版本,下載後解加縮即可使用,這樣可以節省非常多的時間。以下是 Barryrowe/mongo-arm 的安裝流程。

git 下載整個專案:

git clone https://github.com/Barryrowe/mongo-arm.git

建立 mongo 這個使用者帳號:

sudo useradd mongo
sudo passwd mongo

將編譯好的 MongoDB 放到適當的位置:

sudo cp -R binaries/2.1.1 /opt/mongo

設定檔案權限:

sudo chown -R mongo:mongo /opt/mongo

建立存放資料的目錄:

sudo mkdir -p /data/db

設定目錄權限:

sudo chown mongo:mongo /data/db

接著要設定系統啟動的指令稿:

sudo cp config/mongodb /etc/init.d/mongodb

這個指令稿必須依照自己的安裝設定進行修改,在第 50 行左右的地方,請依照自己的設定修正 MongoDB 安裝路徑:

DAEMON=/opt/mongo/bin/mongod

在第 95 行左右,如果您剛剛上面所新增的使用者不是 mongo,那在這裡就要把 mongo 修改成自己指定的使用者名稱:

DAEMONUSER=${DAEMONUSER:-mongo}

設定檔案權限:

sudo chmod 755 /etc/init.d/mongodb

config/mongod.conf 複製到 /etc/mongod.conf

sudo cp config/mongod.conf /etc/mongod.conf

註冊 mongodb 這個新的系統服務:

sudo update-rc.d mongodb defaults

啟動 MongoDB 資料庫:

sudo service mongodb start

設定一下 PATH,在 ~/.bashrc 中加入:

export PATH=$PATH:/opt/mongo/bin

這樣 MongoDB 就安裝好了,最後測試一下:

mongo

輸出為

MongoDB shell version: 2.1.1
connecting to: test
>

雖然這個版本有點舊,但是對於一般的應用應該是足夠的,最重要的是安裝快速又方便。