2

Vagrantファイルでこのように転送ポートを3000に設定して、Vagrantで新しいRailsアプリを起動して実行しました

config.vm.forward_port 3000, 3000

サーバーをシャットダウンしてvagrantを終了した後、「127.0.0.1への接続が閉じられました」という出力が表示されましたが、Vagrantを使用せずにRailsアプリを起動しようとすると、

[2013-07-30 12:18:41] INFO  WEBrick 1.3.1
[2013-07-30 12:18:41] INFO  ruby 2.0.0 (2013-05-14) [x86_64-darwin12.4.0]
[2013-07-30 12:18:41] WARN  TCPServer Error: Address already in use - bind(2)
Exiting

    /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/webrick/utils.rb:85:in `initialize': Address already in use - bind(2) (Errno::EADDRINUSE)
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/webrick/utils.rb:85:in `new'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/webrick/utils.rb:85:in `block in create_listeners'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/webrick/utils.rb:82:in `each'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/webrick/utils.rb:82:in `create_listeners'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/webrick/server.rb:132:in `listen'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/webrick/server.rb:113:in `initialize'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/2.0.0/webrick/httpserver.rb:45:in `initialize'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/handler/webrick.rb:11:in `new'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/handler/webrick.rb:11:in `run'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/server.rb:264:in `start'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands/server.rb:84:in `start'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:78:in `block in <top (required)>'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:73:in `tap'
        from /Users/mm.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:73:in `<top (required)>'
        from bin/rails:4:in `require'
        from bin/rails:4:in `<main>'

Google検索で、これを行う必要があると言われました

ps ax | grep ruby

その後、プロセスを強制終了しますが、grepによって返された番号のプロセスがないと言われました。

michael$ ps ax | grep ruby
 3604 s001  R+     0:00.00 grep ruby
michael$ kill -9 3604
-bash: kill: (3604) - No such process

これが Vagrant の使用に関連している場合、問題を解決する方法はありますか?

アップデート

lsof -wni tcp:3000この SO answer TCPServer Error: Address already in use - bind(2) also failed to kill プロセスで見つかったコマンドを試す

michael$ lsof -wni tcp:3000
COMMAND   PID                USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
VBoxHeadl 601 mm   22u  IPv4 0x888bec8d3960ddb1      0t0  TCP *:hbci (LISTEN)
michael$ kill -9 PID
-bash: kill: PID: arguments must be process or job IDs
4

0 に答える 0