Pow は大変便利なのですが、 Mac 専用です。
その linux 版が prax ysbaddaden/prax です。
README にインストール方法が書いてありますが、2014 年 7 月時点では以下のように unstable を使用するのがお勧めです。(そもそも本番で使うモノではないので躊躇せず行きましょう。)
私は個人的に rvm を使っていますが、アンチの方は適宜読み替えてください。
sudo git clone git://github.com/ysbaddaden/prax.git /opt/prax
cd /opt/prax/
sudo git checkout unstable
rvm use 2.1.1@prax --create --ruby-version
sudo ./bin/prax install
gem install rack
gem install mime-types
prax start -f
最後の -f は foreground です。慣れないうちはこれでログを目視しながら別のターミナルから作業するといいでしょう。だいたい使い慣れてきたら ^C で止めて、 prax start と普通に実行すれば ok です。(rack と mime-types にアクセスできる環境下で実行するよう気を付けてください。mime-types が無くても実行可能ですが、無いと css や js をレスポンスする際に適切な Content-Type がつきません。CSSが適用されない現象が起きたらここを疑ってください。)
cd
git clone git://example.com/myapp
cd myapp
rvm use 2.1.1@myapp --create --ruby-version
echo RACK_ENV=staging > .env
vi .praxrc
source "/home/kuboon/.rvm/scripts/rvm"
rvm use `cat .ruby-version`@`cat .ruby-gemset`
unstable の機能なのでまだドキュメントされていませんが、.env があれば load_env され、.praxrc があれば source されるので、上のような感じで設定します。(ちなみに master ブランチには .ruby-version を読み込む機能がビルトインされていましたが、rvm アンチな誰かが消したようです。その代わりに .praxrc 対応が入ったのでまあいいじゃないの。)
注意点としては、prax は最小限の環境変数で rack を立ち上げようとするので、source "$rvm_path/scripts/rvm" などと華麗にキメると $rvm_path が空で失敗します。~/.praxconfig に設定するとできるらしいので、興味ある方はソースを追ってください。ほぼ pure ruby です。
次に bundle したり rake db:setup したりして、rails s で立ち上がるところまで持ってきたら、
prax link
とすると ~/.prax/myapp というシンボリックリンクが作成され、 http://myapp.dev
や http://myapp.192.168.0.10.xip.io
でアクセスできるようになります。
もしサーバーを example.com
で公開していて、http://myapp.example.com でアクセスしたい場合には
cd ~/.prax
mv myapp myapp.example
という感じでファイル名を変更するとヒットします。
また、~/.prax/default を作成しておくと該当するアプリケーションがない場合に採用されます。
これも pow の機能ですが、 unstable 版には実装されているようです。~/.prax にシンボリックリンクを作成する代わりに、数値の入ったテキストファイルを作成します。
cd ~/.prax
echo 3000 > myapp2.example
こうしておくと、ポート 3000 で立ち上がっているサービスに http://myapp2.example.com/ でアクセスできるようになります。
ハートレイルズは新規事業開発のエキスパートです。詳しくは コーポレートサイト をご覧ください。