Raspberry Pi で Meteor

Raspberry Pi で Javascript / Node.js フレームワークの Meteor を動かす。

といっても、バイナリを用意してくれているプロジェクトがあるので、git clone するだけでインストールできる。 GitHub のプロジェクト 4commerce-technologies-AG/meteor の README.md に手順が書いてある。

このプロジェクトでバイナリが配布される前でも、ソースからビルドすれば動いたようだが、ビルドは1日掛かりになったとか。まあそんな感じはする。

基本的に

git clone --depth 1 https://github.com/4commerce-technologies-AG/meteor.git

して、PATHを通すだけ。

初回の実行に Rasberry Pi 3B で約20分掛かった。 他の遅い機種では厳しそう。
また create や、サンプルの起動にもそれぞれ5分くらい掛かる。
起動してしまえば、ちょっと重いが、普通に動作するように見えるので、省電力で上げっぱなしに出来ることを考えれば、使えなくはないかもしれない。

しかし、Rails とか Node.js とか、プロジェクトの実行時にライブラリを用意して、かつ、x86/x64 以外はビルドが入るようなやつだと、どうしても重いなあ~と思う。

起動時に MongoDB が Locale が認識できないというエラーが出る場合は、sudo raspi-config でロケールを en_US.UTF-8 に変更すると回避できる。

Raspberry Pi Zero /W で USB ケーブルで Windows に接続

Raspberry Pi Zero /W は、USB ケーブルで直接 Windows と接続できる。
名前の解決にBonjour サービスが必要になるので、あらかじめ iTunes をインストールしておく必要がある。 私の場合はiTunesを使う目的で最初から入っていたが。  (iTunesじゃない方法もあるらしい)

ssh で接続するまでの手順をまとめると、

Raspbian の入った、Micro SD カードを用意する。

Micro SDのルートディレクトリにあるファイルを編集

config.txt に以下の行を追加


dtoverlay=dwc2

cmdline.txt の行の中間、rootwait の次くらいに以下の内容を追加。 1行の中間に挿入し、改行はしてはいけない。


modules-load=dwc2,g_ether

ルートディレクトリに ssh という名前の空ファイルを作る。 拡張子は無し。

編集が終わったら、Micro SD をデバイスの取り外しで取り外して、Raspberry Pi Zero にセット。

PC と USB ケーブルで接続。 このとき、電源側じゃなくて、 USB デバイス用の方に接続する。
LEDの点滅が収まるまで待つ。

PC 側はドライバがいるので、以下のサイトからダウンロードしておく
http://domotique.caron.ws/cartes-microcontroleurs/raspberrypi/pi-zero-otg-ethernet/
フランス語でビビるが “RPI Driver OTG.zip” が落とせればOK。
展開しておく。

PCのマイコンピュータを右クリックし [管理]-[デバイスマネージャ]
ポート(COMとLPT)から、
USBシリアルデバイスを探す。 (COM 4)みたいなのがそう。 数字が4かどうかは環境に依存する。
右クリックし、[ドライバの更新]-[コンピューターを参照してドライバーソフトウェアを検索]
先ほどの展開フォルダを指定し、ネットワークアダプターに[USB Ethernet/RNDIS Gadget]が入ればOK。

コマンドプロンプトで、


ping raspberrypi.local

でつながればOK。 反応がない場合は、手順を再確認しよう。

ここまでくれば、PuTTY などで、raspberrypi.local で、いつもの pi ユーザーでログインできる。

以下の手順で Wifi の設定をすれば、次回以降は無線LANで接続できる。


sudo sh -c 'wpa_passphrase SSID パスフレーズ >> /etc/wpa_supplicant/wpa_supplicant.conf'

wpa_supplicant.conf の平文パスワードは消しておいた方がいい。

接続確認は


sudo ifdown wlan0
sudo ifup wlan0
ifconfig

で、できる。

その後、Macでも試したが、Macで接続する場合は、ドライバが要らないので、楽だった。

WordPress 純正の Raspberry Pi 一発設定ツール Blog In A Box

一旦作った環境は、HDDに保存して、Wordpress 純正の Raspberry Pi 組み込み環境をインストールしてみた。

Blog in a Box

一発で WordPress 環境が出来る。 ただし、多少は ssh で入って、設定したいかな。。。

インストールは Windows から GUI で行うことができ、途中で Wifi の設定と SSH の設定がある。 最後に Micro SDに書き込んでおしまい。

SSH の設定の際は、公開鍵が必要。 無い場合は、事前に用意しておく必要がある。

生成された Micro SD を差し込んで起動し、http://マシン名.local にアクセスすれば、もう WordPress が設定できている。

ちなみに、 Ethernet ポートの方にケーブルを挿しても、勝手に DHCP でつながる。

その後、SSH でログインして、以下の設定を行った。

  • /etc/dhcpcd.conf を編集して、 IP アドレスの固定
  • ホスト名の設定
  • WordPress の日本語化
  • ntp のサーバの設定
  • /tmp /var/log などの ramdisk 化、swap 無効化
  • crontab を編集して、 mydns の更新設定 (これは直接関係ない)

インストール後は、 samba も入っているので、 Windows からのファイルの転送も簡単。

WordPress のアップデートは、 cron でやるようになっているらしい。 WordPress の設定画面からだと例の ftp の設定画面が出てきて、できない。
( /opt/wordpress の usr:group を www-data:www-data にすればできる)

nginx の設定を見てみたが、Wordpress 用にちゃんと設定済みのようだ。

安定稼働するようなら、Micro SD から HDD に引っ越しした方が、精神衛生上良さそうだなと思っている。