- 公開日:2016年05月20日
記事概要
capistrano-maintenanceのGemインストール後、rbenv exec bundle exec rails s -b 0.0.0.0でサーバーの起動に失敗しました。
この記事は、capistrano-maintenanceのNoMethodErrorエラーの修正方法について記述しています。
環境
- rbenv
- bundler
- rails 4.2.6
- ruby 2.3.0
- capistrano 3.2.1
- capistrano-maintenance
- Nginx 1.8.1
capistrano-maintenance
capistrano-maintenanceは、capistrano3を使って、capコマンドでメンテナンス画面の表示非表示を切り替えることのできるライブラリです。
エラーの発生
capistrano-maintenanceをbundle installし、検証環境と本番環境(unicorn and Nginx)の動作確認後に、development環境でエラーが発生しました。
このエラーは、unicornサーバーでは発生しません。
エラーの修正
以下のようにGemfileを修正します。
修正前
{project_folder}/Gemfile
group :development do gem 'capistrano-maintenance', '~> 1.0' end
修正後
{project_folder}/Gemfile
group :development do gem 'capistrano-maintenance', '~> 1.0', require: false end
require: falseを追加することで、rbenv exec bundle exec rails s -b 0.0.0.0でサーバーを立ち上げられるようになります。
まとめ
メンテナンス画面の切り替えは、手動では面倒な作業です。間違えも起きやすいです。
とても便利なツールなので、capistrano3でdeployをおこなっている開発者は、capistrano-maintenanceを利用してみてください。
以上。
PICK UP オススメ書籍
運営サイト(railsで作成しています)
参考記事
- 【Rails4.2.6】capistrano3でメンテナンス画面を表示する
- capistrano-maintenance
- NoMethodError when starting rails server
0 件のコメント:
コメントを投稿