我正在尝试将基本的Python博客/网站迁移到Heroku,以将其部署到互联网上。我部分完成了这个过程,并且无法正确处理Procfile。我按照here for Heroku显示的说明操作。
“Mysite”是我网站的顶级目录。根据指示,我已将virtualenv置于其中。
我不确定Procfile需要去哪里 - 这是我遇到的错误:
C:\Users\andre\mysite>virtualenv venv
Using base prefix 'c:\\users\\andre\\appdata\\local\\programs\\python\\python35-32'
New python executable in venv\Scripts\python.exe
Installing setuptools, pip, wheel...done.
C:\Users\andre\mysite>venv\Scripts\activate
(venv) C:\Users\andre\mysite>pip freeze > requirements.txt
You are using pip version 7.1.2, however version 8.1.0 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
(venv) C:\Users\andre\mysite>pip install -r requirements.txt
Requirement already satisfied (use --upgrade to upgrade): wheel==0.24.0 in c:\users\andre\mysite\venv\lib\site-packages (from -r requirements.txt (line 1))
You are using pip version 7.1.2, however version 8.1.0 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
(venv) C:\Users\andre\mysite>heroku local web
ERROR: open Procfile: The system cannot find the file specified.
我尝试将Procfile放在几个不同的地方,但没有任何运气消除错误。
我正在使用的Procfile具有以下内容:
web: gunicorn mysite.wsgi --log-file -
文件目录如下:
andre/
-Documents/
-Desktop/
-AppData/
-Local/
-heroku/
-mysite/
-blog/
-mysite/
-venv/
-db.sqlite3
-manage.py
-Procfile
-requirements.txt
关于我在这里做错了什么的任何建议?谢谢。
答案 0 :(得分:3)
将一个目录移至存储库的根目录,然后删除.txt
扩展名。来自the documentation:
Procfile是名为
Procfile
的文件。它应该完全命名为Procfile
,而不是其他任何东西。例如,Procfile.txt
无效。该文件应该是一个简单的文本文件。该文件必须放在应用程序的根目录中。如果放在子目录中,它将无法运行。
本文档适用于Heroku支持的所有语言。当文档说明"你的应用程序的根源"它指的是根目录,而不是Django应用程序。