0

現在、Cloud9 で開発サーバーを起動すると、次のエラーが発生します。

`trimakas:~/workspace (master) $ rails s -p $PORT -b $IP
=> Booting Puma
=> Rails 4.2.3 application starting in development on http://0.0.0.0:8080
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[39230] Puma starting in cluster mode... 
[39230] * Version 3.4.0 (ruby 2.3.0-p0), codename: Owl Bowl Brawl 
[39230] * Min threads: 5, max threads: 5
[39230] * Environment: development
[39230] * Process workers: 2
[39230] * Preloading application
[39230] * Listening on tcp://0.0.0.0:8080
Exiting
/usr/local/rvm/gems/ruby-2.3.0/gems/puma-3.4.0/lib/puma/binder.rb:255:in 
`initialize': Address already in use - bind(2) 
for "0.0.0.0" port 8080 (Errno::EADDRINUSE)`

次に、なぜそれが使用されているのかを見つけようとします: lsof -wni tcp:8080

しかし、何も見つかりません??!

次に、まったく運が悪いので、次のことを試します。

puma -C config/puma.rb

rails server -b http://0.0.0.0:8080

rails s -b 0.0.0.0 -p 8080

rails s -p $PORT -b $IP

私のpuma.configファイルはシンプルで、次のようになります。

environment 'development'

workers Integer(ENV['WEB_CONCURRENCY'] || 2)
threads_count = Integer(ENV['MAX_THREADS'] || 5)
threads threads_count, threads_count

preload_app!

rackup      DefaultRackup
port        8080
environment 'development'

daemonize true

on_worker_boot do
  ActiveSupport.on_load(:active_record) do
  ActiveRecord::Base.establish_connection
end
end

ありがとうトッド

4

1 に答える 1

1

まったく同じ問題がありました。
解決策はすでにここに示されています。

すべての ruby​​ プロセスを強制終了する必要があります。

killall ruby

その後、サーバーを再起動するだけです

rails server -b $IP -p $PORT

まだ解決策が見つからない場合に役立つことを願っています。

于 2016-07-31T19:58:46.110 に答える