Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Capistranoを導入後、自動デプロイするとサイトにアクセス出来なくなりました。

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
EC2で個人開発したRuby on rails アプリを手動デプロイし、
その後自動デプロイできる状態まで作業したのですが、
ブラウザでIPアドレスを開こうとするとこのサイトにアクセス出来ませんと表示されてしまいます。

■■な機能を実装中に以下のエラーメッセージが発生しました。

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

サイトにアクセス出来ない。

該当のソースコード

[ec2-user@ip-172-31-45-251 ~]$ less log/unicorn.stderr.log
log/unicorn.stderr.log: No such file or directory
[ec2-user@ip-172-31-45-251 ~]$ cd  /var/www/nostalgia
[ec2-user@ip-172-31-45-251 nostalgia]$ less log/unicorn.stderr.log

I, [2020-11-07T10:55:16.939475 #28976]  INFO -- : master process ready
I, [2020-11-07T10:55:16.944288 #28984]  INFO -- : worker=0 ready
bundler: failed to load command: unicorn_rails (/home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails)
ArgumentError: Already running on PID:28976 (or pid=/var/www/nostalgia/tmp/pids/unicorn.pid is stale)
  /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:205:in `pid='
  /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:137:in `start'
  /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>'
  /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `load'
  /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `<top (required)>'
bundler: failed to load command: unicorn_rails (/home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails)
ArgumentError: Already running on PID:28976 (or pid=/var/www/nostalgia/tmp/pids/unicorn.pid is stale)
  /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:205:in `pid='
  /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:137:in `start'
  /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>'
  /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `load'
  /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `<top (required)>'
I, [2020-11-08T07:58:59.094353 #28976]  INFO -- : reaped #<Process::Status: pid 28984 exit 0> worker=0
I, [2020-11-08T07:58:59.094553 #28976]  INFO -- : master complete
I, [2020-11-08T07:59:15.497198 #6889]  INFO -- : Refreshing Gem list
I, [2020-11-08T07:59:16.579258 #6889]  INFO -- : listening on addr=0.0.0.0:3000 fd=9
I, [2020-11-08T07:59:16.584083 #6889]  INFO -- : master process ready
I, [2020-11-08T07:59:16.588905 #6897]  INFO -- : worker=0 ready
I, [2020-11-08T08:24:21.305363 #6889]  INFO -- : reaped #<Process::Status: pid 6897 exit 0> worker=0
I, [2020-11-08T08:24:21.305561 #6889]  INFO -- : master complete
I, [2020-11-08T08:39:59.756896 #7391]  INFO -- : Refreshing Gem list
I, [2020-11-08T08:40:00.819264 #7391]  INFO -- : listening on addr=0.0.0.0:3000 fd=9
I, [2020-11-08T08:40:00.823995 #7391]  INFO -- : master process ready
I, [2020-11-08T08:40:00.827531 #7399]  INFO -- : worker=0 ready
I, [2020-11-09T01:58:37.132740 #7391]  INFO -- : reaped #<Process::Status: pid 7399 exit 0> worker=0
I, [2020-11-09T01:58:37.133055 #7391]  INFO -- : master complete
I, [2020-11-09T01:59:11.874187 #12898]  INFO -- : Refreshing Gem list
I, [2020-11-09T01:59:13.884108 #12898]  INFO -- : listening on addr=/var/www/nostalgia/tmp/sockets/unicorn.sock fd=9
I, [2020-11-09T01:59:13.888796 #12898]  INFO -- : master process ready
I, [2020-11-09T01:59:13.892300 #12906]  INFO -- : worker=0 ready
/home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:205:in `pid=': Already running on PID:12898 (or pid=/var/www/nostalgia/tmp/pids/unicorn.pid is stale) (ArgumentError)
        from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:137:in `start'
        from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>'
        from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `load'
        from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `<main>'
/home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:205:in `pid=': Already running on PID:12898 (or pid=/var/www/nostalgia/tmp/pids/unicorn.pid is stale) (ArgumentError)
        from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:137:in `start'
        from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>'
        from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `load'
        from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `<main>'
I, [2020-11-09T02:57:50.438145 #12898]  INFO -- : reaped #<Process::Status: pid 12906 exit 0> worker=0
I, [2020-11-09T02:57:50.438283 #12898]  INFO -- : master complete
I, [2020-11-09T03:12:01.935370 #13576]  INFO -- : Refreshing Gem list
I, [2020-11-09T03:12:02.970145 #13576]  INFO -- : unlinking existing socket=/var/www/nostalgia/tmp/sockets/unicorn.sock
I, [2020-11-09T03:12:02.970332 #13576]  INFO -- : listening on addr=/var/www/nostalgia/tmp/sockets/unicorn.sock fd=9
:client_loop: send disconnect: Broken pipe
uraokayuutarou@uraokayuutarou-no-MacBook .ssh %     

試したこと

less log/unicorn.stderr.logで最新のエラーを確認し、
ArgumentError: Already running on PID:28976 を確認し、
ps aux | grep unicornでプロセスを確認し、killコマンドを実行しようとしたところ、
PID:28976が見つかりませんでした。

[ec2-user@ip-172-31-45-251 ~]$ ps aux | grep unicorn
ec2-user 13013  0.0  9.4 455308 94912 ?        Sl   07:19   0:01 unicorn master -c /var/www/nostalgia/current/config/unicorn.rb -E deployment -D
ec2-user 13052  0.0  8.6 456400 87576 ?        Sl   07:19   0:00 unicorn worker[0] -c /var/www/nostalgia/current/config/unicorn.rb -E deployment -D
ec2-user 13526  0.0  0.0 117012   908 pts/2    S+   07:52   0:00 less log/unicorn.stderr.log
ec2-user 13733  0.0  0.0 119436   964 pts/3    S+   08:11   0:00 grep --color=auto unicorn
[ec2-user@ip-172-31-45-251 ~]$ kill 13013
[ec2-user@ip-172-31-45-251 ~]$ 

PIDが古くなっているとエラー文に記載があったため
psで動作しているPIDを確認してみました。

uraokayuutarou@uraokayuutarou-no-MacBook .ssh % ps                                             
  PID TTY           TIME CMD
25378 ttys000    0:00.18 -zsh
20482 ttys001    0:00.06 -zsh
18686 ttys003    0:00.20 -zsh
33712 ttys004    0:00.31 -zsh
18715 ttys005    0:00.09 -zsh
uraokayuutarou@uraokayuutarou-no-MacBook .ssh % 

PID:28976を探してkillすれば問題は解決するのでしょうか!?

EC2でmysql2をbundle installして、
git pull origin masterを実行

bundle exec cap production deploy
sudo systemctl restart mariadb
sudo systemctl restart nginx

を実行しましたが、アクセス出来ず。

bundle install後

増えていた記述
I, [2020-11-07T10:55:14.533545 #28976] INFO -- : Refreshing Gem list    I, [2020-11-07T10:55:16.939475 #28976] INFO -- : master process ready
I, [2020-11-07T10:55:16.928690 #28976] INFO -- : listening on addr=0.0.0.0:3000 fd=9    
I, [2020-11-07T10:55:1

減った記述
I, [2020-11-09T03:12:02.970145 #13576] INFO -- : unlinking existing socket=/var/www/nostalgia/tmp/sockets/unicorn.sock
I, [2020-11-09T03:12:02.970332 #13576] INFO -- : listening on addr=/var/www/nostalgia/tmp/sockets/unicorn.sock fd=9
:   :client_loop: send disconnect: Broken pipe
uraokayuutarou@uraokayuutarou-no-MacBook .ssh %   

diffffff参照

エラー文を再度読み直し、PID:28976がどこかで起動したままだと仮定して、
killしてみたのですが、うまく行きませんでした。

[ec2-user@ip-172-31-45-251 ~]$ kill 28976
-bash: kill: (28976) - No such process

 補足

rails s してlocal:host3000にアクセスするとアプリは問題なく表示されていました。

0

1Answer

Unicorn は起動時に /var/www/nostalgia/tmp/pids/unicorn.pid ファイルの存在をチェックします。存在しなければ作成して自身の PID を書き込みますが、もし存在すれば他の Unicorn プロセスが実行中だとみなしてエラー終了します。

通常なら Unicorn は終了時に自身が書いた unicorn.pid を削除しますが、クラッシュするなどで削除しないまま終了することがあります。こうなると新しい Unicorn が起動できない状態になります。エラーメッセージにある Already running on PID:28976 (or pid=/.../unicorn.pid is stale) はこの状態になっている可能性を示しています。(stale は更新されるべき情報が更新されずに古びてしまったことを意味します)

Unicorn プロセス PID:28976 がもう存在しないのであれば、 /var/www/nostalgia/tmp/pids/unicorn.pid は削除しても構いません。削除すれば起動できるようになります。

1Like

Comments

  1. @uraoka_yutaro

    Questioner

    非常にわかりやすいご回答を頂きありがとうございます。
    /var/www/nostalgia/tmp/pids/unicorn.pidの削除について、
    /tmp/pids/unicorn.pid で検索をかけて削除方法を調べようとしたのですが、
    検索出来ず、削除方法を教えていただけますでしょうか。

    ps aux | grep unicornでプロセス番号を調べ、
    kill -9 28976
    を実行してみたのですがこちらでは出来ませんでした。
    [ec2-user@ip-172-31-45-251 ~]$ kill -9 28976
    -bash: kill: (28976) - No such process
  2. unicorn.pid はただのファイルですので `rm /var/www/nostalgia/tmp/pids/unicorn.pid` で削除できます。
  3. ps aux | grep unicorn の出力をよく見ると PID:94912 で unicorn master が起動していますね。まずこちらを kill 94912 で止めた方がいいと思います。
  4. @uraoka_yutaro

    Questioner

    削除の仕方のご回答ありがとうございます!
    PID:94912をkillして`rm /var/www/nostalgia/tmp/pids/unicorn.pid`を実行したのですが、
    ファイルを削除することが出来ませんでした。。。

    [ec2-user@ip-172-31-45-251 nostalgia]$
    rm/var/www/nostalgia/tmp/pids/unicorn.pid
    rm: `/var/www/nostalgia/tmp/pids/unicorn.pid' を削除できません: No such file or directory
    [ec2-user@ip-172-31-45-251 nostalgia]$
  5. @uraoka_yutaro

    Questioner

    再度エラー内容を表示させ、
    difffffでコードの比較をするとほとんど同じものでした。

    [ec2-user@ip-172-31-45-251 nostalgia]$ less log/unicorn.stderr.log

    I, [2020-11-08T07:58:59.094553 #28976] INFO -- : master complete
    I, [2020-11-08T07:59:15.497198 #6889] INFO -- : Refreshing Gem list
    I, [2020-11-08T07:59:16.579258 #6889] INFO -- : listening on addr=0.0.0.0:3000 fd=9
    I, [2020-11-08T07:59:16.584083 #6889] INFO -- : master process ready
    I, [2020-11-08T07:59:16.588905 #6897] INFO -- : worker=0 ready
    I, [2020-11-08T08:24:21.305363 #6889] INFO -- : reaped #<Process::Status: pid 6897 exit 0> worker=0
    I, [2020-11-08T08:24:21.305561 #6889] INFO -- : master complete
    I, [2020-11-08T08:39:59.756896 #7391] INFO -- : Refreshing Gem list
    I, [2020-11-08T08:40:00.819264 #7391] INFO -- : listening on addr=0.0.0.0:3000 fd=9
    I, [2020-11-08T08:40:00.823995 #7391] INFO -- : master process ready
    I, [2020-11-08T08:40:00.827531 #7399] INFO -- : worker=0 ready
    I, [2020-11-09T01:58:37.132740 #7391] INFO -- : reaped #<Process::Status: pid 7399 exit 0> worker=0
    I, [2020-11-09T01:58:37.133055 #7391] INFO -- : master complete
    I, [2020-11-09T01:59:11.874187 #12898] INFO -- : Refreshing Gem list
    I, [2020-11-09T01:59:13.884108 #12898] INFO -- : listening on addr=/var/www/nostalgia/tmp/sockets/unicorn.sock fd=9
    I, [2020-11-09T01:59:13.888796 #12898] INFO -- : master process ready
    I, [2020-11-09T01:59:13.892300 #12906] INFO -- : worker=0 ready
    /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:205:in `pid=': Already running on PID:12898 (or pid=/var/www/nostalgia/tmp/pids/unicorn.pid is stale) (ArgumentError)
    from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:137:in `start'
    from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>'
    from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `load'
    from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `<main>'
    /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:205:in `pid=': Already running on PID:12898 (or pid=/var/www/nostalgia/tmp/pids/unicorn.pid is stale) (ArgumentError)
    from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:137:in `start'
    from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>'
    from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `load'
    from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `<main>'
    I, [2020-11-09T02:57:50.438145 #12898] INFO -- : reaped #<Process::Status: pid 12906 exit 0> worker=0
    I, [2020-11-09T02:57:50.438283 #12898] INFO -- : master complete
    I, [2020-11-09T03:12:01.935370 #13576] INFO -- : Refreshing Gem list
    I, [2020-11-09T03:12:02.970145 #13576] INFO -- : unlinking existing socket=/var/www/nostalgia/tmp/sockets/unicorn.sock
    I, [2020-11-09T03:12:02.970332 #13576] INFO -- : listening on addr=/var/www/nostalgia/tmp/sockets/unicorn.sock fd=9
    I, [2020-11-09T03:12:02.975072 #13576] INFO -- : master process ready
    I, [2020-11-09T03:12:02.978622 #13584] INFO -- : worker=0 ready
    /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:205:in `pid=': Already running on PID:13576 (or pid=/var/www/nostalgia/tmp/pids/unicorn.pid is stale) (ArgumentError)
    from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:137:in `start'
    from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>'
    from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `load'
    from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `<main>'
    I, [2020-11-10T05:52:10.770956 #13576] INFO -- : reaped #<Process::Status: pid 13584 exit 0> worker=0
    I, [2020-11-10T05:52:10.771238 #13576] INFO -- : master complete
    I, [2020-11-10T08:17:52.909555 #24327] INFO -- : Refreshing Gem list
    I, [2020-11-10T08:17:53.975744 #24327] INFO -- : unlinking existing socket=/var/www/nostalgia/tmp/sockets/unicorn.sock
    I, [2020-11-10T08:17:53.975914 #24327] INFO -- : listening on addr=/var/www/nostalgia/tmp/sockets/unicorn.sock fd=9
    I, [2020-11-10T08:17:53.981022 #24327] INFO -- : master process ready
    I, [2020-11-10T08:17:53.984457 #24335] INFO -- : worker=0 ready
    I, [2020-11-10T08:19:23.032824 #24327] INFO -- : reaped #<Process::Status: pid 24335 exit 0> worker=0
    I, [2020-11-10T08:19:23.032950 #24327] INFO -- : master complete
    (END)

  6. @uraoka_yutaro

    Questioner

    削除したいファイルがあるか確認したかったので、
    下記のコマンドで正しいかわからないのですが、
    確認してみました。

    [ec2-user@ip-172-31-45-251 nostalgia]$ test -f /var/www/nostalgia/tmp/pids/unicorn.pid
    [ec2-user@ip-172-31-45-251 nostalgia]$ ls
    Capfile Gemfile.lock Rakefile babel.config.js config current lib node_modules postcss.config.js releases revisions.log storage tmp yarn.lock
    Gemfile README.md app bin config.ru db log package.json public repo shared test vendor
    [ec2-user@ip-172-31-45-251 nostalgia]$
  7. unicorn.pid が存在しなければそれはそれで問題ないと思います。 kill した Unicorn PID:94912 が終了時に削除してくれたのかもしれません。

    less log/unicorn.stderr.log で表示したエラーログですが、最後の行の日付が11月10日になっています。これで合っていますか?デプロイをやり直してみると変化があるかもしれません。
  8. ちなみにファイルの存在をチェックする test -f は存在するかどうかを終了コードで返します(存在すれば0、存在しなければ1)。終了コードは表示されませんので、見るには test -f の直後に echo $? を実行します。

    もっと簡単なやり方は ls /var/www/nostalgia/tmp/pids/unicorn.pid です。ファイルが存在すればファイル名が表示され、存在しなければ No such file or directory のようなエラーメッセージが表示されます。
  9. @uraoka_yutaro

    Questioner

    おっしゃる通りです。11月10日になっていますね。
    何度かデプロイしているのですが、
    変ですね、デプロイの手順に誤りがあった可能性があります。
    再度、デプロイしてみます!
  10. @uraoka_yutaro

    Questioner

    私の理解度が低く、手順が変だと思いますが、
    教えて頂いたことを実行してみました!!

    [ec2-user@ip-172-31-45-251 nostalgia]$ echo?
    -bash: echo?: コマンドが見つかりません
    [ec2-user@ip-172-31-45-251 nostalgia]$ test -f echo
    [ec2-user@ip-172-31-45-251 nostalgia]$ test -f /var/www/nostalgia/tmp/pids/unicorn.pid echo ?
    -bash: test: 引数が多すぎます
    [ec2-user@ip-172-31-45-251 nostalgia]$ ls /var/www/nostalgia/tmp/pids/unicorn.pid
    ls: /var/www/nostalgia/tmp/pids/unicorn.pid にアクセスできません: No such file or directory
    [ec2-user@ip-172-31-45-251 nostalgia]$

    ファイルが存在していないことはわかりました!
  11. @uraoka_yutaro

    Questioner

    デプロイしようと作業を進めているとsudo systemctl restart nginxで
    nginxを再起動させようとすると、エラーがあるというような内容が出てきたので、
    nginxが起動されているかps ax | grep nginxで確認してみました。
    この結果でnjinxが正常に起動していると解釈しても問題ないでしょうか!?

    [ec2-user@ip-172-31-45-251 nostalgia]$ sudo systemctl reload nginx
    Job for nginx.service invalid.
    [ec2-user@ip-172-31-45-251 nostalgia]$ sudo systemctl restart nginx
    Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
    [ec2-user@ip-172-31-45-251 nostalgia]$ ps ax | grep nginx
    24627 pts/0 D+ 0:00 grep --color=auto nginx
    [ec2-user@ip-172-31-45-251 nostalgia]$
  12. @uraoka_yutaro

    Questioner

    nginxでエラーログを確認してみました。
    2020/11/12 08:23:52 [emerg] 24605#0: directive "upstream" has no opening "{" in /etc/nginx/conf.d/rails.conf:3
    2020/11/12 08:38:21 [emerg] 24646#0: directive "upstream" has no opening "{" in /etc/nginx/conf.d/rails.conf:3
    /var/log/nginx/error.log (END)
    おそらくWEBにアクセス出来ない原因はこれかなと予測しました!
  13. そうですね、/etc/nginx/conf.d/rails.conf の3行目に問題があって nginx が起動できていないようです。
  14. @uraoka_yutaro

    Questioner

    sudo vim /etc/nginx/conf.d/rails.conf
    を実行して確認してみます!

    upstream
    # Unicornと連携させるための設定
    server unix:/var/www/nostalgia/shared/tmp/sockets/unicorn.sock;
    }

    確認したところ書き換えていたのは、アプリケーション名のnostalgiaという箇所のみだったのですが、
    何かで設定したアプリ名を付けなければならないのでしょうか!?
    私は勝手にここにアプリの名前を付けて入力してしまいました。
  15. @uraoka_yutaro

    Questioner

    こちらが[ec2-user@ip-172-31-45-251 nostalgia]←アプリケーション名だとすると
    どこを変更すれば良いかわからなくなってしまいました。

  16. @uraoka_yutaro

    Questioner

    おそらく 1行目のapp_server {
    を誤って削除してしまっていたのが原因かと思いました!

    [ec2-user@ip-172-31-45-251 nostalgia]$ sudo vim /etc/nginx/conf.d/rails.conf
    [ec2-user@ip-172-31-45-251 nostalgia]$ cd /var/lib
    [ec2-user@ip-172-31-45-251 lib]$ sudo chmod -R 775 nginx
    [ec2-user@ip-172-31-45-251 lib]$ cd ~
    [ec2-user@ip-172-31-45-251 ~]$ sudo systemctl start nginx
    [ec2-user@ip-172-31-45-251 ~]$ sudo systemctl reload nginx
    [ec2-user@ip-172-31-45-251 ~]$ cd /var/www/nostalgia
    [ec2-user@ip-172-31-45-251 nostalgia]$ git pull origin master

    unicornの立ち上げ失敗

    [ec2-user@ip-172-31-45-251 nostalgia]$ ps aux | grep unicorn
    ec2-user 23945 0.0 9.4 454980 94836 ? Sl 06:51 0:01 unicorn master -c /var/www/nostalgia/current/config/unicorn.rb -E deployment -D
    ec2-user 23984 0.0 8.7 456004 87844 ? Sl 06:51 0:00 unicorn worker[0] -c /var/www/nostalgia/current/config/unicorn.rb -E deployment -D
    ec2-user 24906 0.0 0.0 119436 968 pts/0 S+ 09:35 0:00 grep --color=auto unicorn
    [ec2-user@ip-172-31-45-251 nostalgia]$ kill 23945
    [ec2-user@ip-172-31-45-251 nostalgia]$ RAILS_SERVE_STATIC_FILES=1 unicorn_rails -c config/unicorn.rb -E production -D
    Traceback (most recent call last):
    10: from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `<main>'
    9: from /home/ec2-user/.rbenv/versions/2.6.5/bin/unicorn_rails:23:in `load'
    8: from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>'
    7: from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `new'
    6: from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:77:in `initialize'
    5: from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:77:in `new'
    4: from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:77:in `initialize'
    3: from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:84:in `reload'
    2: from /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:84:in `instance_eval'
    1: from config/unicorn.rb:8:in `reload'
    /home/ec2-user/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:592:in `working_directory': config_file=config/unicorn.rb would not be accessible in working_directory=/var/www/current (ArgumentError)
    master failed to start, check stderr log for details
    [ec2-user@ip-172-31-45-251 nostalgia]$

  17. @uraoka_yutaro

    Questioner

    少し前進しました。

    We’re sorry , but ~
    とブラウザに何も表示されなかった状態からこの画面が出るようになりました。

    production.rbのエラーを確認するとDEBUGに何か原因がありそうです。
    [ec2-user@ip-172-31-45-251 nostalgia]$ cd current
    [ec2-user@ip-172-31-45-251 current]$ cd log
    [ec2-user@ip-172-31-45-251 log]$ ls
    production.log unicorn.stderr.log unicorn.stdout.log
    [ec2-user@ip-172-31-45-251 log]$ tail -f production.log
    D, [2020-11-12T06:51:16.853289 #23912] DEBUG -- : (0.3ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483
    D, [2020-11-12T06:51:18.430102 #23945] DEBUG -- : (0.3ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483
    D, [2020-11-12T09:44:18.494467 #26420] DEBUG -- : (8.3ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483
    D, [2020-11-12T09:44:18.502891 #26420] DEBUG -- : (0.1ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483
    D, [2020-11-12T09:44:18.503234 #26420] DEBUG -- : (0.1ms) SELECT GET_LOCK('6517012043257192470', 0)
    D, [2020-11-12T09:44:18.507092 #26420] DEBUG -- : (0.2ms) SELECT `schema_migrations`.`version` FROM `schema_migrations` ORDER BY `schema_migrations`.`version` ASC
    D, [2020-11-12T09:44:18.510660 #26420] DEBUG -- : ActiveRecord::InternalMetadata Load (0.2ms) SELECT `ar_internal_metadata`.* FROM `ar_internal_metadata` WHERE `ar_internal_metadata`.`key` = 'environment' LIMIT 1
    D, [2020-11-12T09:44:18.515253 #26420] DEBUG -- : (0.1ms) SELECT RELEASE_LOCK('6517012043257192470')
    D, [2020-11-12T09:44:20.349142 #26537] DEBUG -- : (0.3ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483
    D, [2020-11-12T09:44:21.865157 #26569] DEBUG -- : (0.3ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483
  18. @uraoka_yutaro

    Questioner

    エラー文確認すると
    エラーが増えていました。。。

    2020/11/12 08:23:52 [emerg] 24605#0: directive "upstream" has no opening "{" in /etc/nginx/conf.d/rails.conf:3
    2020/11/12 08:38:21 [emerg] 24646#0: directive "upstream" has no opening "{" in /etc/nginx/conf.d/rails.conf:3
    2020/11/12 09:43:12 [error] 25218#0: *1 connect() to unix:/var/www/nostalgia/tmp/sockets/unicorn.sock failed (111: Connection refused) while connecting to upstream, client: 109.163.219.232, server: 54.248.24.69, request: "GET / HTTP/1.1", upstream: "http://unix:/var/www/nostalgia/tmp/sockets/unicorn.sock:/", host: "54.248.24.69:80"
    2020/11/12 09:45:18 [error] 26645#0: *1 connect() to unix:/var/www/nostalgia/tmp/sockets/unicorn.sock failed (111: Connection refused) while connecting to upstream, client: 123.226.243.197, server: 54.248.24.69, request: "GET / HTTP/1.1", upstream: "http://unix:/var/www/nostalgia/tmp/sockets/unicorn.sock:/", host: "54.248.24.69"
    2020/11/12 09:54:38 [error] 26645#0: *4 connect() to unix:/var/www/nostalgia/tmp/sockets/unicorn.sock failed (111: Connection refused) while connecting to upstream, client: 123.14.51.223, server: 54.248.24.69, request: "GET /boaform/admin/formLogin?username=adminisp&psd=adminisp HTTP/1.0", upstream: "http://unix:/var/www/nostalgia/tmp/sockets/unicorn.sock:/boaform/admin/formLogin?username=adminisp&psd=adminisp"
    /var/log/nginx/error.log (END)
  19. ログの DEBUG 行はデバッグ用の事細かな情報であり、普段は知る必要が少ないものです。一般的な情報は INFO 行で、警告やエラーは WARN や ERROR 行になります。
  20. @uraoka_yutaro

    Questioner

    nginx.confのマニュアルありがとうございます。
    これで正しいと思うのですが、
    うまく行きませんでした。。。

    upstream app_server {
    # Unicornと連携させるための設定
    server unix:/var/www/nostalgia/tmp/sockets/unicorn.sock;
    }
  21. @uraoka_yutaro

    Questioner

    やはり問題はここにありそうですね。
    server unix:/var/www/nostalgia/tmp/sockets/unicorn.sock;
    こことの連携で何が行われているのか探してみます。
  22. @uraoka_yutaro

    Questioner

    解決しました!
    /var/www/nostalgia/tmp/pids/unicorn.pid
    ここに/sharedが抜けているのが原因で表示出来なかったです!!
    @uasiさん、お付き合い頂き本当にありがとうございます。
    一度、頭を整理して、質問ページに編集し直します!!
  23. なるほど、解決してなによりです。
  24. @uraoka_yutaro

    Questioner

    ありがとうございます!!
    また質問見つけたら助けてください。。。
    宜しくお願い致します。

Your answer might help someone💌