カテゴリー : 2012年 5月

[Heroku] WebServer を WEBrick から thin に変更する方法 – [Rails 3.x on Heroku/Cedar]

単に Heroku に Rails アプリをデプロイしただけの最初の状態では、Webサーバーは WEBrick で動いています。

$ heroku ps
Process  State         Command                            
-------  ------------  ---------------------------------  
web.1    idle for 94h  bundle exec rails server -p $PORT

Webserver

By default, your app’s web process runs rails server, which uses Webrick. This is fine for testing, but for production apps you’ll want to switch to a more robust webserver. We recommend Thin.

To use Thin with Rails 3, add it to your Gemfile:

gem 'thin'

Run bundle install to set up your bundle locally.

■ Procfile の作成・追記

web: bundle exec rails server thin -p $PORT -e $RACK_ENV
echo "RACK_ENV=development" >>.env

.gitignore に .env を無視するように追記します。

# Ignore Heroku for local config
/.env

■ Foreman のインストール

$ gem install foreman

■ Foreman の起動

Foreman を起動して、ブラウザから http://localhost:5000/ にアクセスして、確認します。

$ foreman start

■ Heroku へデプロイ

$ git add -A
$ git commit -m "use thin via procfile"
$ git push heroku

■ thin で起動しているか確認する

$ heroku ps
Process  State        Command                               
-------  -----------  ------------------------------------  
web.1    idle for 4m  bundle exec rails server thin -p $..

以上です。

【参考】

Getting Started with Rails 3.x on Heroku/Cedar | Heroku Dev Center はてなブックマーク - Getting Started with Rails 3.x on Heroku/Cedar | Heroku Dev Center

The Process Model | Heroku Dev Center はてなブックマーク - The Process Model | Heroku Dev Center

Fiberを使ってem-http-requestとかを同期的に呼び出す – daily gimite はてなブックマーク - Fiberを使ってem-http-requestとかを同期的に呼び出す - daily gimite

Issue #13: FiberError with Rails 3.1 on Heroku · mperham/rack-fiber_pool · GitHub はてなブックマーク - Issue #13: FiberError with Rails 3.1 on Heroku · mperham/rack-fiber_pool · GitHub

mperham/rack-fiber_pool · GitHub はてなブックマーク - mperham/rack-fiber_pool · GitHub

[Ruby][RVM] gemset global に Heroku をインストールする

Ruby の バージョン管理システム RVM にて、どの gemset の状態でも使える gemset global に Heroku をインストールしました。

$ rvm gemset use global
Using /Users/bakorer/.rvm/gems/ruby-1.9.2-p290 with gemset global
 
$ gem list
 
*** LOCAL GEMS ***
 
bundler (1.0.22)
 
$ gem install heroku

以上です。

【参考】

RVM の Gem Sets で gemset の管理 – tbrookの日記

[RVM] Ruby on Rails のバージョンを管理する方法

Ruby のバージョン管理システム RVM で、Ruby on Rails のバージョンを管理する方法を忘備録としてメモ。

まず、Rails を利用する Ruby のバリデーションに切り替えます。

$ rvm use 1.9.3
Using /Users/bakorer/.rvm/gems/ruby-1.9.3-p194

gemset の一覧を表示。

$ rvm gemset list
 
gemsets for ruby-1.9.3-p194 (found in /Users/bakorer/.rvm/gems/ruby-1.9.3-p194)
   global

gemset の名前がバッティングしないように、gemset を作成します。

ちなみに僕はRailsアプリケーション毎に gemset を作成するようにしています。

$ rvm gemset create myapp

作成した gemset に切り替えます。

$ rvm gemset use myapp

最後に、rails をインストールして、完了です。

$ gem install rails

以上です。

[Excel] テキストデータ(CSV形式)を貼り付ける方法

Excel に CSV形式のデータを貼り付ける方法を調べたのでメモ。

Excel にテキストデータ(CSV形式)を貼り付ける – まりふのひと はてなブックマーク - Excel にテキストデータ(CSV形式)を貼り付ける - まりふのひと

Excel → CSV はカンタンに出力できるのだけれど、逆の作業は結構めんどうなのですよね。

[Sublime Text 2] インデント(Indent)の設定方法

Sublime Text 2 でインデント(Indent)を設定する方法を調べたのでメモ。

設定は、Sublime Text 2 → Preferences 内の「Settings – Default」の Preferences.sublime-settings を編集するのではなく、「Settings – User」に設定を書いてオーバーライドすることを推奨していました。

// While you can edit this file, it's best to put your changes in
// "User/Preferences.sublime-settings", which overrides the settings in here.
//
// Settings may also be placed in file type specific options files, for
// example, in Packages/Python/Python.sublime-settings for python files.

よって、「Settings – User」でファイルを開いて、下記の内容を追記しました。

tabキーで「半角スペース2つ」に設定しました。

{
    // The number of spaces a tab is considered equal to
    "tab_size": 2,
 
    // Set to true to insert spaces when tab is pressed
    "translate_tabs_to_spaces": true
}

以上です。