瘦Web服务器:`start_tcp_server':在git分支签出后没有acceptor(RuntimeError) [英] Thin web server: `start_tcp_server': no acceptor (RuntimeError) after git branch checkout

查看:96
本文介绍了瘦Web服务器:`start_tcp_server':在git分支签出后没有acceptor(RuntimeError)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

一个Rails 3.2.0应用程序,在Thin web服务器上运行良好,在本地和Heroku雪松堆栈上都可以使用。

之后:

  $ git branch work 
$ git checkout work
$ rails server

我得到:

  =>启动瘦身
=> Rails 3.2.0应用程序在http://0.0.0.0:3000开发中开始
=>用-d呼叫以分离
=> Ctrl-C关闭服务器
>>瘦网页服务器(v1.3.1 codename Triple Espresso)
>>最大连接数设置为1024
>>听取0.0.0.0:3000,CTRL + C停止
退出
/Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/eventmachine-0.12.10/lib/ eventmachine.rb:572:在`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:在`start_server'
from /Users/peter/.rvm/gems/ruby-1.9.3-p125/gems/thin-1.3.1/lib/thin/backends/tcp_server.rb: 16:在`连接'
从/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'$ b $ / 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:在`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:从/ Users / peter /中运行
。 rvm / gems / ruby​​-1.9.3-p125 / gems / rack-1.4.1 / lib / rack / server.rb:265:在`start'
from /Users/peter/.rvm/gems/ruby -1.9.3-p125 / gems / railties-3.2.0 / lib / rails / commands / server.rb:70:在`start'
from /Users/peter/.rvm/gems/ruby-1.9。 3-p125 / gems / railties-3.2.0 / lib / rails / commands.rb:55:在< top(必填)>块中的$'$ b $ / from /Users/peter/.rvm/gems/ ruby-1.9.3-p125 / gems / railties-3.2.0 / lib / rails / commands.rb:50:在'tap'中
从/Users/peter/.rvm/gems/ruby-1.9.3 -p125 / gems / railties-3.2.0 / lib / rails / commands.rb:50:在< top(required)>'
从脚本/导轨:6:在'require'
脚本/ rails:6:在< main>中

另外,当我这样做时:

  sudo bundle exec rails rails thin -p 3000 

我得到:

  /Users/peter/.rvm/ ruby-1.9.3-p125 / lib / ruby​​ / site_ruby / 1.9.1 / ruby​​gems / dependency.rb:247:in`to_specs':在[bigdecimal-1.1.0]之间找不到bundler(> = 0) ,io-console-0.3,json-1.5.4,minitest-2.5.1,rake-0.9.2.2,rdoc-3.9.4](Gem :: LoadError)$ / $ b / from /Users/peter/.rvm/ rubies / ruby​​-1.9.3-p125 / lib / ruby​​ / site_ruby / 1.9.1 / ruby​​gems / dependency.rb:256:在`to_spec'
from /Users/peter/.rvm/rubies/ruby-1.9 .3-p125 / lib / ruby​​ / site_ruby / 1.9.1 / ruby​​gems.rb:1210:从/Users/peter/.rvm/gems/ruby-1.9.3-p125/bin/获得`gem'
bundle:18:在`< main>'

我安装了bundler 1.0.22。更新并安装它。似乎没有任何工作。任何想法?

解决方案

这适用于我。 Find(zombie?)服务器(在服务器运行时退出终端时可能发生):
$ b $ pre $ $ $ $ $ $ $ grep rails

如果它返回类似于:

  33467 s002 S + 0:00.00 grep rails 
33240 s003 S + 0:15.05 /Users/Arta/.rbenv/versions/1.9.2-p290/bin/ruby script / rails s -p 3000

杀了它,并重新运行:

  $ kill -9 33240 
$ rails s


A Rails 3.2.0 app, working fine with Thin web server, both locally and on Heroku cedar stack.

After:

$ git branch work
$ git checkout work
$ rails server

I get:

=> 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>'

Also, when I do:

sudo bundle exec rails server thin -p 3000

I get:

/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>'

I have bundler 1.0.22 installed. Updated and installed it. Nothing seems to work. Any ideas?

解决方案

This works for me. Find (zombie?) server (can happen when quitting terminal with server running):

$ ps ax | grep rails

If it returns something like:

33467 s002 S+ 0:00.00 grep rails
33240 s003 S+ 0:15.05 /Users/Arta/.rbenv/versions/1.9.2-p290/bin/ruby script/rails s -p 3000

kill it, and run anew:

$ kill -9 33240
$ rails s

这篇关于瘦Web服务器:`start_tcp_server':在git分支签出后没有acceptor(RuntimeError)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆