
忘備録。
Railsのデプロイはトラブルが満載ですが、その中でもUnicorn restart辺りはよくやらかします。
01 kill: sending signal to XXXXXX failed:
01 No such process
と、初回デプロイでUnicornのプロセスがなくて怒られる場合は、
サーバーのRailsがデプロイされているディレクトリに移動して、
bundle exec unicorn_rails -c config/unicorn/production.rb -E production -D
と叩いて、Unicornを先に起動させてからcapistranoを動かせばいいわけなのですが、
master failed to start, check stderr log for details
となることもあります(unicornの起動エラー)。
この場合、unicornのlogを見に行くわけですが、
bundler: failed to load command: unicorn_rails
NoMethodError: undefined method `deep_symbolize_keys' for ...
なんてエラーが出ることがあったりします。
この場合は、Railsサーバーで作ったconfig/secrets.ymlの
production:
secret_key_base: (シークレットキー)
を正確に書くことでunicornの読み込みが正常に戻り、サーバーでunicornを起動させてから、ローカルのcapistranoを正常に稼働させることができるようになったりします。
同じようなミスで悩んでいる方の参考になればと。
(レアなエラーケースではありますが……)











