SAHARA

Herokuにpumaを使用しRailsをデプロイする方法

更新回数:5回 | 2015/12/23更新
編集者:Thumb aicon 400x400Thumb img 0

  Herokuでwebサーバーであるpumaを使う方法を記載しています。Herokuではwebサーバーにpumaを使うことを推薦しています。ぜひpumaを使用しましょう。

 pumaを使用する詳しい説明はHerokuのドキュメントに記載されていますので詳しい説明はそちらを参照してください。この記事ではHerokuでpumaを使用する最小限のことを書いています。(Rails 4.1以降対象)


手順

Gemfileに以下を追加。

gem'puma'

追加したgemのインストール。

bin/bundle install

アプリケーションのルートディレクトリにProcfileという名で以下の内容で保存。

web: bundle exec puma -C config/puma.rb

config/puma.rbを作成し、以下を追加。

workers Integer(ENV['WEB_CONCURRENCY'] || 2)
threads_count = Integer(ENV['MAX_THREADS'] || 5)
threads threads_count, threads_count
preload_app!
rackup DefaultRackup
port ENV['PORT'] || 3000
environment ENV['RACK_ENV'] || 'development'
on_worker_boot do
 ActiveRecord::Base.establish_connection
end

config/database.ymlへ以下を追加。

production:
 url:  <%= ENV["DATABASE_URL"] %>
 pool: <%= ENV["DB_POOL"] || ENV['MAX_THREADS'] || 5 %>

以上でHerokuでpumaを使用することが出来るようになりました。

そのままHerokuにアップロードすれば全ては完了です。

Img 0
syossanさん、編集ありがとうございます。
発言するにはログインもしくは、会員登録をしてください。