Um aplicativo Rails 3.2.0, funcionando bem com servidor web Thin, tanto localmente quanto na pilha de cedro do Heroku.
Depois de:
$ git branch work
$ git checkout work
$ rails server
Eu recebo:
=> Booting Thin
=> Rails 3.2.0 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
>> Thin web server (v1.3.1 codename Triple Espresso)
>> Maximum connections set to 1024
>> Listening on 0.0.0.0:3000, CTRL+C to stop
Exiting
/Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/eventmachine-0.12.10/lib/eventmachine.rb:572:in `start_tcp_server': no acceptor (RuntimeError)
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/eventmachine-0.12.10/lib/eventmachine.rb:572:in `start_server'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/thin-1.3.1/lib/thin/backends/tcp_server.rb:16:in `connect'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/thin-1.3.1/lib/thin/backends/base.rb:53:in `block in start'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `call'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run_machine'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/thin-1.3.1/lib/thin/backends/base.rb:61:in `start'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/thin-1.3.1/lib/thin/server.rb:159:in `start'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/rack-1.4.1/lib/rack/handler/thin.rb:13:in `run'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/rack-1.4.1/lib/rack/server.rb:265:in `start'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/railties-3.2.0/lib/rails/commands/server.rb:70:in `start'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/railties-3.2.0/lib/rails/commands.rb:55:in `block in <top (required)>'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/railties-3.2.0/lib/rails/commands.rb:50:in `tap'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/railties-3.2.0/lib/rails/commands.rb:50:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
Além disso, quando eu faço:
sudo bundle exec rails server thin -p 3000
Eu recebo:
/Users/peter/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find bundler (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2, rdoc-3.9.4] (Gem::LoadError)
from /Users/peter/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
from /Users/peter/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems.rb:1210:in `gem'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/bin/bundle:18:in `<main>'
Eu tenho o bundler 1.0.22 instalado. Atualizado e instalado. Nada parece funcionar. Alguma ideia?
ruby-on-rails-3
git
thin
Maeseele
fonte
fonte
... eventmachine-1.0.0/lib/eventmachine.rb:526:in `start_tcp_server': no acceptor (port is in use or requires root privileges) (RuntimeError)
.Respostas:
Isso funciona para mim. Encontrar servidor (zumbi?) (Pode acontecer ao sair do terminal com o servidor em execução):
Se retornar algo como:
mate-o e execute novamente:
fonte
ps ax | grep rails
não encontrar nada, tenteps ax | grep ruby
.A porta 3000 pode já estar em uso. Veja http://mrjaba.posterous.com/starttcpserver-no-acceptor-runtimeerror
fonte
ps aux | grep rails
Se houver qualquer outro processo bloqueando a porta, você pode descobrir qual PID ela possui, assim:
Em seguida, simplesmente mate-o / os:
fonte
ntop
estava usando a porta 3000 na minha máquina. A resposta está correta.pgrep ruby
para ver quais servidores estão rodando e então;)
fonte
Faz por mim
fonte
Eu tenho esse erro porque estava executando rails-dev-box com Rails dentro dele.
Portanto, é desconectado do Vagrant e encerrado:
Isso me ajudou.
fonte
Tive esse erro porque já estava rodando Rails em outro terminal. Fechar meu outro projeto consertou isso.
fonte
Tive um problema semelhante depois de voltar das férias para o escritório. Eu executo meu servidor no IP local como:
O problema era que meu IP havia mudado, eu só precisava usar o novo.
fonte
Execute isso no terminal
E depois
fonte
ps aux | grep rails
.