🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
unicorn

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

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Q&A

解決済

1回答

1308閲覧

unicornのログで警告

majikadezou

総合スコア34

unicorn

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

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

0グッド

0クリップ

投稿2020/01/04 02:32

nginx と unicornを連携させたいと思っています。
unicornのログを見ると、エラーは起きていないようなのですが、warningが出てしまっています。

[2020-01-03T13:31:40.455617 #3258] INFO -- : Refreshing Gem list /home/user/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/bullet-6.0.2/lib/bullet.rb:41: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call /home/user/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/activesupport-6.0.1/lib/active_support/core_ext/module/delegation.rb:171: warning: The called method `delegate' is defined here /home/user/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/tzinfo-1.2.5/lib/tzinfo/ruby_core_support.rb:142: warning: Using the last argument as keyword parameters is deprecated /home/user/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/tzinfo-1.2.5/lib/tzinfo/ruby_core_support.rb:142: warning: Using the last argument as keyword parameters is deprecated /home/user/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/actionpack-6.0.1/lib/action_dispatch/middleware/stack.rb:37: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call /home/user/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/actionpack-6.0.1/lib/action_dispatch/middleware/ssl.rb:59: warning: The called method `initialize' is defined here /home/user/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/activerecord-6.0.1/lib/active_record/store.rb:106: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call /home/user/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/activerecord-6.0.1/lib/active_record/store.rb:109: warning: The called method `store_accessor' is defined here I, [2020-01-03T13:31:41.609578 #3258] INFO -- : unlinking existing socket=/var/www/rails/sample_app/tmp/sockets/.unicorn.sock I, [2020-01-03T13:31:41.609778 #3258] INFO -- : listening on addr=/var/www/rails/sample_app/tmp/sockets/.unicorn.sock fd=9 I, [2020-01-03T13:31:41.617722 #3258] INFO -- : master process ready I, [2020-01-03T13:31:41.626525 #3263] INFO -- : worker=1 ready I, [2020-01-03T13:31:41.627220 #3262] INFO -- : worker=0 ready

unicornがうまく動作していないのか、しているのか分からなくて悩んでいます。

unicornの設定ファイル # set lets $worker = 2 $timeout = 30 $app_dir = "/var/www/rails/hoge_app" $listen = File.expand_path 'tmp/sockets/.unicorn.sock', $app_dir $pid = File.expand_path 'tmp/pids/unicorn.pid', $app_dir $std_log = File.expand_path 'log/unicorn.log', $app_dir # set config worker_processes $worker working_directory $app_dir stderr_path $std_log stdout_path $std_log timeout $timeout listen $listen pid $pid # loading booster preload_app true # before starting processes before_fork do |server, worker| defined?(ActiveRecord::Base) and ActiveRecord::Base.connection.disconnect! old_pid = "#{server.config[:pid]}.oldbin" if old_pid != server.pid begin Process.kill "QUIT", File.read(old_pid).to_i rescue Errno::ENOENT, Errno::ESRCH end end end # after finishing processes after_fork do |server, worker| defined?(ActiveRecord::Base) and ActiveRecord::Base.establish_connection end

また、unlinking existing socket=/var/www/rails/sample_app/tmp/sockets/.unicorn.sock
となっているのが、謎で、ファイルはpath上に存在するのは確認しているので、pathは合っているのですが。。。
隠しファイルになっているから読み取れないのでしょうか。
他の記事の内容を丸パクリしているので、権限関係は一切触れていません。

原因が分かる方、いらっしゃいませんか?

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

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

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

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

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

guest

回答1

0

ベストアンサー

unlinking existing socket つまり存在するsocketを削除しています
ということで、古いunicornが作ったのを削除して作りなおしているので、これは単にinfomationです。念の為作製日時を確認してください。
ああ 頭にINFOってあるじゃないですか。masterもworkerも立ち上がってますね。
nginxがどのsocketを見に行くようになってますか?

投稿2020/01/04 07:20

winterboum

総合スコア23567

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

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

majikadezou

2020/01/04 07:46

回答ありがとうございます。 upstream unicorn_server { server unix:/var/www/rails/hoge_app/tmp/sockets/.unicorn.sock fail_timeout=0; } となっており、nginxの設定でもunicornと同じsocket を見るようになっています。
winterboum

2020/01/04 09:07

んと、、、 「unicornのログで警告」とあったので、アスセス出来ないということかと思ったのですが、ちがった?
majikadezou

2020/01/04 11:02

失礼しました!warningというのをみて、unicorn自体正常に動いていないのかと勘違いしました。 ご協力ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問