Perlがくしゅう帳(Rubyも)

プログラミングの勉強会の参加記録や学んだことなど。 twitter ID : @tomcha_で活動しています。 最近は主にPerl関連の勉強会やコミュニティに参加しています。移転前のブログはこちら->http://ruby.doorblog.jp/

rubyでwebアプリケーション書いた時の覚え書き

sinatraを使ってhamlで書いたwebサイトを公開するためにいろいろ調べたことメモ

調べたら出てきた用語・プログラム

bundler
  • 何のgemを使っているか、管理するgem
  • Gemfileという名前のファイルを作り、gem 'gem名'を記述していく。
  • bundle checkコマンドで、(その環境でインストールされていない)足りないgemを教えてくれるようになる。
  • bundle show 'gem名' コマンドで、そのgemファイルが何処にあるかパスを返してくれる。 
unicorn
  • Rack準拠のHTTPサーバー。

passenger standalone

  • HTTPサーバー。
sinatra
  • webアプリケーションを作るのに特化したrubyDSL。WAFって括りで良いのかな?
nginx
  • 昔HTTPサーバーといえばApache、今はnginx。速いらしい。

 

構成について

Sinatraで作ったwebアプリを公開する」 でググると、Sinatra + Unicorn + Nginx という記事が多数ヒットするので、この構成で試そうと思ったが、unicornは上級者向けとの記事を見つけたので、まずはpassenger standalone + sinatra で試してみる事にする。

  • passengerをinstall
  • nginxをinstall
  • sinatraをrequireしてコードを書く。ファイルの拡張子は.rbでよい。
  • config.ruというファイルを作る。中身はsinatraで書いたwebアプリ本体を呼び出すコードっぽい。Myapp.rbなら

require File.expand_path(File.dirname(__FILE__)) + '/Myapp'

run Sinatra::Application

 

起動方法

コマンドラインで passenger start -p ポート番号 で起動。

デーモンとして起動したい時は、passenger start -p ポート番号 --daemon

止める時は、passenger stop