无法重新启动ec2实例,无法再次启动webbrick

时间:2013-08-22 09:13:21

标签: ruby-on-rails amazon-ec2 ubuntu-12.04

我在开发环境和分离模式下在amazon ec2上运行rails 3.2应用程序。

$ rails s -d 

在此命令之后,ec2终端挂起并且没有退出此命令,但服务器启动,因为我可以访问应用程序。我必须关闭终端并且服务器仍然启动。

在此之后我杀死了该应用程序。

$ lsof|grep 3000
$ kill -9 <pid>

现在,如果我尝试重新启动服务器,则会出错。

A server is already running. Check /home/ubuntu/trade_ship/tmp/pids/server.pid.
Exiting

现在即使删除tmp文件夹并重新创建它,服务器也无法启动。任何人都可以帮我解决这两个问题吗?

2 个答案:

答案 0 :(得分:0)

即使我遇到过这个问题,也请尝试重新启动系统,然后检查......此解决方案当时对我有用。

答案 1 :(得分:0)

首先,如果您无法使用端口3000,请使用rails s -p <port no>命令

其次,如果你必须杀死服务器启动的RUBY实例,那么使用

    ps aux | grep ruby
username       17731   0.1  1.6  3127008  67996   ??  S     2:00PM   0:01.42 /Users/username/.rvm/rubies/ruby-1.9.2-p180/bin/ruby script/rails s -d

然后杀死

kill -9 17731

这肯定会解决问题