创建Procfile以声明启动Web进程的命令:

时间:2012-03-09 00:28:18

标签: python django heroku

我已经创建了一个Procfile文件,但是我继续得到以下内容。

(venv)Micheles-MacBook-Pro:bed4ted michele$ foreman start/usr/local/foreman/lib/foreman/procfile.rb:31:in `read': Is a directory - Procfile (Errno::EISDIR)
from /usr/local/foreman/lib/foreman/procfile.rb:31:in `parse_procfile'
from /usr/local/foreman/lib/foreman/procfile.rb:17:in `initialize'
from /usr/local/foreman/lib/foreman/engine.rb:24:in `new'
from /usr/local/foreman/lib/foreman/engine.rb:24:in `initialize'
from /usr/local/foreman/lib/foreman/cli.rb:81:in `new'
from /usr/local/foreman/lib/foreman/cli.rb:81:in `engine'
from /usr/local/foreman/lib/foreman/cli.rb:33:in `start'
from /usr/local/foreman/vendor/gems/thor-0.14.6/lib/thor/task.rb:22:in `send'
from /usr/local/foreman/vendor/gems/thor-0.14.6/lib/thor/task.rb:22:in `run'
from /usr/local/foreman/vendor/gems/thor-0.14.6/lib/thor/invocation.rb:118:in `invoke_task'
from /usr/local/foreman/vendor/gems/thor-0.14.6/lib/thor.rb:263:in `dispatch'
from /usr/local/foreman/vendor/gems/thor-0.14.6/lib/thor/base.rb:389:in `start'
from /usr/bin/foreman:15

我可能会犯一个完全初级的错误,但我根本看不到它。我已经检查了stackoverflow上发布的其他问题,但我仍然处于亏损状态。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

如果你正在使用python,请确保你使用的是雪松堆栈 第二,proc文件必须命名为“Procfile”,而不是“procfile”或“Procfile.rb”,它必须位于项目的根目录中(在requirements.txt旁边)

希望这会让你获得90%的胜利。

答案 1 :(得分:0)

看起来工头在尝试解析Procfile时感到困惑。运行foreman check时会得到什么输出?

根据您的一条评论,这可能是您的Procfile行格式化的问题。 Foreman希望Procfile中的每个进程都采用name:commandsee the manual)格式。您的Procfile行是以文本web:还是其他名称开头的?如果没有尝试添加。

另外,您使用什么命令来运行它? foreman run