Heroku运行控制台获得"超时等待过程"

BBJ*_*BJ3 19 console heroku

最近无法使用Heroku连接控制台:

lsoave@ubuntu:~/rails/github/gitwatcher$ heroku run console
Running console attached to terminal... 
Timeout awaiting process
lsoave@ubuntu:~/rails/github/gitwatcher$ 
Run Code Online (Sandbox Code Playgroud)

它会发生在其他人身上吗?

Tay*_*tay 42

我在ISP FastWeb上遇到了同样的问题,这是一个在意大利的ISP.根据我的谷歌搜索,它们似乎阻止了5000端口.

为了解决这个问题,我正在运行以下内容:

heroku run:detached rake db:migrate
Run Code Online (Sandbox Code Playgroud)

这告诉它无需等待在端口5000上连接到我的机器就可以运行.然后,您可以检查刚刚启动的进程的日志.(运行后,heroku命令会告诉你):

heroku logs -p run.1
Run Code Online (Sandbox Code Playgroud)

这告诉它输出正在运行的进程的日志.但我发现即使我的进程仍在运行,logs命令仍在退出.要解决这个问题,如果要"拖尾"日志,可以添加"-t":

heroku logs -p run.1 -t   
Run Code Online (Sandbox Code Playgroud)

当您在日志中看到类似内容时,您将知道您的流程已完成:

2012-10-14T15:36:41+00:00 heroku[run.1]: Process exited with status 0
2012-10-14T15:36:41+00:00 heroku[run.1]: State changed from up to complete
Run Code Online (Sandbox Code Playgroud)

我相信有人可以制作一个可以的脚本

  1. 运行给定的heroku命令 run:detached
  2. 检查输出以确定其进程名称是什么(run.1,run.2等)
  3. heroku logs -p run.1 -t,告诉我输出
  4. 当它看到类似的东西时退出日志进程 State changed from up to complete


Nei*_*ton 18

来自:http://devcenter.heroku.com/articles/oneoff-admin-ps

heroku运行进程在端口5000上打开与Heroku的连接.如果您的本地网络或ISP阻止端口5000,或者您遇到连接问题,您将看到类似于以下内容的错误:

$ heroku run rails console
Running rails console attached to terminal... 
Timeout awaiting process
Run Code Online (Sandbox Code Playgroud)

您可以尝试使用telnet到rendezvous.heroku.com直接连接到端口5000来测试与Heroku的连接.成功的会话将如下所示:

$ telnet rendezvous.heroku.com 5000
Trying 50.19.103.36...
Connected to ec2-50-19-103-36.compute-1.amazonaws.com.
Escape character is '^]'. 
Run Code Online (Sandbox Code Playgroud)

如果您没有收到此输出,则表示您的计算机无法访问我们的服务.我们建议您与IT部门,ISP或防火墙制造商联系,以便继续解决此问题.

  • 端口5000没有阻止我,但我仍然得到"超时等待过程". (3认同)
  • 您可以建议配置"运行"以通过任何列入白名单的端口(如22或通过Web UI)访问任何其他方式(而不是隧道)? (2认同)