我正在尝试部署一个 Heroku 应用程序。
我一定是用Procfile做错了什么。当我运行foreman check
时,出现此错误。
错误:未定义进程
在 Heroku 上部署时,我得到几乎相同的东西
-----> Building runtime environment
-----> Discovering process types
! Push failed: cannot parse Procfile.
Procfile 看起来像这样
网站:节点应用.js
我错过了什么?
更新我从一开始就重新做了所有内容,现在它工作正常。我想我可能对 Unix 行结尾有问题
在 Windows 上遇到"推送失败:无法解析 Procfile"。我可以得出结论这是"Windows文件格式"问题,而不是文件本身的上下文。
确保创建一个干净的文件,也许使用Notepad++或其他高级编辑器来检查文件类型。
另存为 UTF-8 字符文件,而不是 UTF 16 个字符的文件。 这是一个已确认的修复程序。
使用记事本打开当前的Procfile。创建一个新的 Procfile.txt然后粘贴原始 Procfile 的内容。保存您的 Procfile 并将其替换为新的 Procfile
我遇到了同样的问题,使用 VSCode 我将文件更改为 UTF-8(右下角),保存文件并推送它 - 它成功了。
你的Procfile
在你的项目的根目录中吗?它用大写的 P 拼写吗?它有 unix 行尾吗?
这是由于Procfile中的编码类型不同而发生的。
- 在文本编辑器中打开 Procfile,最好是记事本。
- 保存文件并在编码选项中,将编码更改为 UTF-8(默认值为 UTF-16)。
- 将当前 Procfile 替换为项目根文件夹中的此文件,并删除.txt扩展名。
再次推送您的代码,您就可以开始了!
使用以下命令创建Procfile
,
echo web: gunicorn app:app > Procfile