質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
unicorn

Unicornは、汎用のRackアプリケーションサーバ。RackとWebサーバーの機能を併せ持ちます。レスポンス処理や、Nginx単体がRackの機能をサポートしていない事から、一般的にはNginx+Unicorn+Railsの構成を取って用います。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Capistrano

Rubyで書かれたサーバオーケストレーションで、複数のサーバでスクリプトを実行する際に用いられます。主な使用用途はWebアプリケーションのデプロイメントです。 アプリケーションのバージョンアップ自動化、およびデータベースの変更などもできます。

Q&A

解決済

2回答

261閲覧

AWSにcapistranoでデプロイしたいが、unicorn start にてエラー

takoichi

総合スコア17

unicorn

Unicornは、汎用のRackアプリケーションサーバ。RackとWebサーバーの機能を併せ持ちます。レスポンス処理や、Nginx単体がRackの機能をサポートしていない事から、一般的にはNginx+Unicorn+Railsの構成を取って用います。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Capistrano

Rubyで書かれたサーバオーケストレーションで、複数のサーバでスクリプトを実行する際に用いられます。主な使用用途はWebアプリケーションのデプロイメントです。 アプリケーションのバージョンアップ自動化、およびデータベースの変更などもできます。

0グッド

0クリップ

投稿2019/02/27 02:44

編集2019/02/27 04:36

表題の件でエラーが解消出来ず困っています。
全く糸口が見つからず、、ヒントをいただけませんでしょうか。足りない情報などありましたらご指示ください。

怪しいと思っている所

この部分で kill が上手く動いていないように見えます。何故かこれ以降にオプションが表示されているからです。

00:08 unicorn:start 01 /usr/local/rbenv/bin/rbenv exec bundle exec unicorn -c /var/www/a… ✔ 01 app@**.**.**.** 0.103s unicorn restarting... 02 kill -s USR2 `cat /var/www/app/current/tmp/pids/unicorn.pid`

調査したこと・実施したこと

https://teratail.com/questions/147833
上記の情報の通りファイルの存在を確認して実施しましたが、同様のエラーが発生しました。
また、権限が無い可能性を考えchmod 777 に切り替えて実施するも同様のエラーでした。(上手くいかないので664に戻しています。)

https://teratail.com/questions/169573
こちらの情報ではaws側のpidファイルを削除すると上手くいくとありましたので実施した所、
no such file エラーになりました。(上手くいかないので今は復元しています。)

発生している問題・エラーメッセージ

[中略] 00:07 deploy:symlink:release 01 ln -s /var/www/app/releases/20190227020313 /var/www/app/r… ✔ 01 app@**.**.**.** 0.104s 02 mv /var/www/app/releases/current /var/www/app ✔ 02 app@**.**.**.** 0.105s 00:08 unicorn:start 01 /usr/local/rbenv/bin/rbenv exec bundle exec unicorn -c /var/www/a… ✔ 01 app@**.**.**.** 0.103s unicorn restarting... 02 kill -s USR2 `cat /var/www/app/current/tmp/pids/unicorn.pid` 02 02 Usage: 02 kill [options] <pid|name> [...] 02 02 オプション: 02 -a, --all do not restrict the name-to-pid conversio… 02 with the same uid as the present process 02 -s, --signal <sig> send specified signal 02 -q, --queue <sig> use sigqueue(2) rather than kill(2) 02 -p, --pid print pids without signaling them 02 -l, --list [=<signal>] list signal names, or convert one to a na… 02 -L, --table list signal names and numbers 02 02 -h, --help display this help and exit 02 -V, --version output version information and exit 02 02 For more details see kill(1). #<Thread:0x00007f87da05fd98@/Users/myoujinamae/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/sshkit-1.18.0/lib/sshkit/runners/parallel.rb:10 run>terminated with exception (report_on_exception is true): Traceback (most recent call last): 1: from /Users/myoujinamae/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/sshkit-1.18.0/lib/sshkit/runners/parallel.rb:11:in `block (2 levels) in execute' /Users/myoujinamae/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/sshkit-1.18.0/lib/sshkit/runners/parallel.rb:15:in `rescue in block (2 levels) in execute': Exception while executing as app@**.**.**.**: kill exit status: 1 (SSHKit::Runner::ExecuteError) kill stdout: Nothing written kill stderr: Usage: kill [options] <pid|name> [...] オプション: -a, --all do not restrict the name-to-pid conversion to processes with the same uid as the present process -s, --signal <sig> send specified signal -q, --queue <sig> use sigqueue(2) rather than kill(2) -p, --pid print pids without signaling them -l, --list [=<signal>] list signal names, or convert one to a name -L, --table list signal names and numbers -h, --help display this help and exit -V, --version output version information and exit For more details see kill(1). (Backtrace restricted to imported tasks) cap aborted! SSHKit::Runner::ExecuteError: Exception while executing as app@**.**.**.**: kill exit status: 1 kill stdout: Nothing written kill stderr: Usage: kill [options] <pid|name> [...] [中略] INFO unicorn restarting... INFO [0ccb1ac9] Running /usr/bin/env kill -s USR2 `cat /var/www/app/current/tmp/pids/unicorn.pid` as app@**.**.**.**

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

解決?(一応)したのでご報告します!!(兼、自分用のまとめですm(_ _)m)

原因

kill コマンドが動いていない所に着目した所、unicorn がインストールされていない可能性がありました。

00:05 bundler:install The Gemfile's dependencies are satisfied, skipping installation

それとEC2側で bundle exec rails c -e production が動かなったのも怪しいと感じた所です。(これは先輩に聞きました)

結論

rbenv の導入方法がよくなかったのが原因でした。そもそも進めていく中で私が勝手に下記の
問題を対応したためです。

00:05 bundler:install 01 /usr/local/rbenv/bin/rbenv exec bundle install --path /var/www/achieve/shared/bundle --jobs 4… 01 bash: /usr/local/rbenv/bin/rbenv: そのようなファイルやディレクトリはあり...

上記のエラーに対して「無ければ作れば良い!」として手動で mkdirとtouch で対応した影響です。

/usr/local 配下に存在していたrbenv が中途半端に作成されていて必要なファイルが無かった様子でした。
なぜか「rbenv?」と言うディレクトリがあり、これが正常なrbenvっぽかったのでこれを
使用するようにコピーやリネイムをした所無事にデプロイが出来ました!!

投稿2019/02/28 08:48

takoichi

総合スコア17

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

以下で、/var/www/app/releases/currentをmvしているので、

02 mv /var/www/app/releases/current /var/www/app

以下のkillが失敗しているのではないでしょうか?

02 kill -s USR2 `cat /var/www/app/current/tmp/pids/unicorn.pid`

投稿2019/02/27 05:13

moonphase

総合スコア6621

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takoichi

2019/02/27 05:45

moonphaseさん、回答ありがとうございます! 確認してみます!( ;∀;)
takoichi

2019/02/27 06:00 編集

moonphaseさん 勉強不足で申し訳有りません。 〜略 00:07 deploy:symlink:release 01 ln -s /var/www/app/releases/20190227020313 /var/www/app/r… ✔ 01 app@**.**.**.** 0.104s 02 mv /var/www/app/releases/current /var/www/app ✔ 02 app@**.**.**.** 0.105s 00:08 unicorn:start 略〜 上記の処理はcapistranoがデプロイする手順の一貫の流れとして考えていました。 そのためこの処理は必要という認識でした。 つまり、何か他のファイル( deploy.rb 等)が悪さをしているという解釈しましたので、一度見直してみます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問