Por que recebo um erro ao iniciar o ruby ??on rails aplicativo com mongrel_rails
-
02-07-2019 - |
Pergunta
Por que eu obter seguinte erro ao tentar iniciar um aplicativo Ruby on rails com
mongrel_rails start?
C:\RailsTest\cookbook2>mongrel_rails start ** WARNING: Win32 does not support daemon mode. ** Daemonized, any open files are closed. Look at log/mongrel.pid and log/mongr el.log for info. ** Starting Mongrel listening at 0.0.0.0:3000 c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../lib/mongrel/t cphack.rb:12:in `initialize_without_backlog': Only one usage of each socket addr ess (protocol/network address/port) is normally permitted. - bind(2) (Errno::EAD DRINUSE) from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../ lib/mongrel/tcphack.rb:12:in `initialize' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../ lib/mongrel.rb:93:in `new' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../ lib/mongrel.rb:93:in `initialize' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../ lib/mongrel/configurator.rb:139:in `new' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../ lib/mongrel/configurator.rb:139:in `listener' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/mon grel_rails:99:in `cloaker_' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../ lib/mongrel/configurator.rb:50:in `call' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../ lib/mongrel/configurator.rb:50:in `initialize' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/mon grel_rails:84:in `new' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/mon grel_rails:84:in `run' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/../ lib/mongrel/command.rb:212:in `run' from c:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/bin/mon grel_rails:281 from c:/ruby/bin/mongrel_rails:19:in `load' from c:/ruby/bin/mongrel_rails:19
Solução
Você já tem uma escuta processo na porta 3000 (a porta padrão para vira-lata).
Tente:
mongrel_rails start -p 3001
e veja se você receber um erro semelhante.
Se você está tentando instalar mais de um app Rails, você precisa atribuir a cada vira-lata a uma porta e edição que apache conf conformidade separado.
Se você não tentar fazer isso, a maneira mais direta de matar todos os mestiços é gerenciador de tarefas janelas e matar todos os processos de 'Ruby'.
Note que se você tiver mestiço instalado como um serviço que é iniciado automaticamente
mongrel_rails install::service ...
... o processo de rubi vai gerar automaticamente. Nesse caso, você terá que editar as propriedades do processo através do painel de serviços do Windows. Deixe-me saber se você precisar de mais informações.
Outras dicas
Não uso vira-lata em janelas mim, mas eu acho que o erro é o equivalente a Linux' erro 'porta em uso'. Você está tentando vincular o servidor a uma porta, onde outra coisa já está escutando?
No Windows, eu encontrei duas maneiras possíveis para corrigir esse problema:
- Trabalho em torno de: Iniciar o servidor web vira-lata em outra porta ??li>
- Solução: Encontrar o processo ruby.exe em seu gerenciador de tarefas e terminá-lo