0

in foreman procfile でユニコーンプロセスを制御したい。ここに私のプロフィールがあります

web: bundle exec unicorn -c config/unicorn/local.rb -E local
thinking_sphinx: bundle exec rake ts:start
delayed_job: ./script/delayed_job start
delayed_delta: ./script/delayed_delta start
mail_receiver: ./scripts/mail_receiver_runner start

これが私のユニコーン設定です。

app_path =  /home/deploy/apps/local.myapp.com/myapp/current
worker_processes 1
preload_app false
timeout 180
listen "#{app_path}/tmp/pids/unicorn.sock", backlog: 1024
pid    "#{app_path}/tmp/pids/unicorn.pid"
working_directory app_path
stderr_path "log/unicorn.log"
stdout_path "log/unicorn.log"

私がそれを開始すると、cap foreman:startこれらのエラーが発生しています:

adding listener failed addr=/home/deploy/apps/local.myapp.com/myapp/current/tmp/pids/unicorn.sock (in use)
/home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/socket_helper.rb:140:in `initialize': Address already in use - /home/deploy/apps/local.myapp.com/myapp/current/tmp/pids/unicorn.sock (Errno::EADDRINUSE)
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/socket_helper.rb:140:in `new'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/socket_helper.rb:140:in `bind_listen'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/http_server.rb:228:in `listen'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/http_server.rb:751:in `block in bind_new_listeners!'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/http_server.rb:751:in `each'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/http_server.rb:751:in `bind_new_listeners!'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/http_server.rb:140:in `start'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/bin/unicorn:121:in `<top (required)>'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/bin/unicorn:23:in `load'
    from /home/deploy/apps/local.myapp.com/myapp/shared/bundle/ruby/1.9.1/bin/unicorn:23:in `<main>'

それはユニコーンに関連していますか、それともフォアマンの設定の問題ですか?

4

1 に答える 1

1

この行をユニコーン構成から削除すると、問題が解決します。

pid "#{app_path}/tmp/pids/unicorn.pid"
于 2012-11-13T09:17:47.097 に答える