RailsアプリをさくらのVPSにデプロイしました。しかし表示が出来ないなどがあり試行錯誤しながらいろいろ試しています。
Nginx+unicornで行っているのですが、unicornの起動状態を調べてみました。
$ ps -ef | grep unicorn | grep -v grep kinoko 4886 1 0 Apr25 ? 00:00:05 unicorn master -c /usr/share/nginx/html/current/config/unicorn/production.rb -E deployment -D kinoko 4892 4886 0 Apr25 ? 00:00:02 unicorn worker[0] -c /usr/share/nginx/html/current/config/unicorn/production.rb -E deployment -D kinoko 4895 4886 0 Apr25 ? 00:00:02 unicorn worker[1] -c /usr/share/nginx/html/current/config/unicorn/production.rb -E deployment -D
3つほどプロセスが稼働しているみたいです。
プロセスを見たら、development -D とあるので、deveropmentモードで動いているのかもと思い
rails_envをproductionにしたくて以下を実行しました。 $ export RAILS_ENV=production $
と打ち込みし、再度、起動確認してもdevelopment -Dです。
unicornの設定は以下のようになっています。
lib/capistrano/tasks/unicorn.rb namespace :unicorn do task :environment do set :unicorn_pid, "/usr/share/nginx/html/current/tmp/pids/unicorn.pid" set :unicorn_config, "/usr/share/nginx/html/current/config/unicorn/production.rb" end #unicornをスタートさせるメソッド def start_unicorn within current_path do execute :bundle, :exec, :unicorn, "-c #{fetch(:unicorn_config)} -E #{fetch(:rails_env)} -D" end end
上のファイルの#{fetch(:rails_env)} -D の部分でdevelopmentとなってしまいます。
これがdevelopmentのままでも問題がないのか、production にしないといけないのかが知りたいのです。
rails_envをproductionnにするべきだと思いますが、その方法がわかりません。
単純に#{fetch(:rails_env)} -Dのところをproduction -Dにすれば表示自体出来るのだと思います。それだけでこの疑問が解決されるのか、それともrails_envをpeoductionになるように設定するべき項目があるのか、そのへんの所の疑問が払拭されず悩んでいます。
たぶん rails_env をproductionになるように設定するべきなのだと思いますが、その方法がわかからないのです。。
どなたかご教示お願いできますでしょうか?よろしくお願いします。
質問内容の追記
もしかして、デプロイ前の仮想マシンをproductionモードにしてからデプロイするべきなのでしょうか?
あなたの回答
tips
プレビュー