2014-05-29 21:02:35

Raspberry PiでRailsを動かしてみたときのこと

Raspberry PiにRailsを入れたときのこと。
あまりすんなりとはいかなかったので、つまづいたところなんかをメモ。
(ちなみにRaspberry Piで動いているOSはArch Linuxです。)

第一の関門 Railsのインストール

Raspberry Piにsshで接続し、gem install rails とやるだけでRailsのインストールが始まる。
簡単、、、なのだがこれがなかなか終わらない。しかしこれはただ単純に待てばいいので難しいことは何もない。
終わるまで3時間程度。

sshで接続してる場合、ほっとくとタイムアウトしてしまうと思われる。
その場合は、screen というので対策できる。nohup というのもある。
とにかく長時間放置でタイムアウトしちゃってもいい(ログアウトしちゃってもいい)対策は必要。

第二の関門 bundle install

Railsアプリを動かす前準備で bundle install 。やると思います。
これがまた死ぬほど時間かかる上に、インストール中に、

killed

とだけ出て終了しちゃう。当然だが bundle install は終わってない。
こっちのが問題だった。

killed されちゃうのはメモリ不足のため

bundle install で Killed になっちゃうのは、メモリ不足のための模様。
これは、スワップ領域を設定してあげることで回避できた。
スワップ領域設定の方法については、例によってArch LinuxのWikiを参照した。
何でも載ってるね!ちなみ参照したページはこれ - Swap (日本語) - ArchWiki

killed されなくなったけど、、、超時間かかる

killed されなくなったのはいいけど、Railsのインストールのときと同じく、やたら時間がかかる。。。
9000秒くらいかかったので、実に3時間弱くらい。

なんで時間かかるかというと、まず、 therubyracer をインストールしようとしてるのが原因。
これ自体はいれたかったのでいいんだけど、どうやらこいつを入れるのに伴って、 libv8 というのが入る模様。
そんでこれがどうやら ソースとってきてビルドしている ようなのである。Raspberry Piになんてことさせるんや。。。
最近の割とパワーのあるPCなら10分程度で終わるらしいのだが。

まとめると

RailsをRaspberry Piにインストールするためには、

  • スワップ領域を拡大する(bundle install 中に killed されちゃうならば)
  • あとはひたすら待つ。トータルで6時間くらい待つ。

ちなみにRailsの起動がまたすっとろい。webrickじゃなくてthinにするとちょっとだけ早くなる気がする、とか。

Share