Я пытаюсь развернуть мое первое примерное приложение с Django/Heroku с помощью учебника по началу работы с Django/Heroku.Развертывание Django/Python 3.4 для Heroku
Мои инструменты: Python 3.4 и Windows 7 PowerShell.
Мой вызов: развертывание в Heroku терпит неудачу, и я не уверен, почему. После моего первого «git push» я увидел, что по умолчанию используется python-2.7.0. Затем я добавил файл runtime.txt
(python-3.4.0) в корень приложения.
Вот что происходит, когда я бегу git push heroku master
-----> Python app detected
-----> Preparing Python runtime (python-3.4.0)
-----> Installing Setuptools (2.1)
-----> Installing Pip (1.5.4)
-----> Installing dependencies using Pip (1.5.4)
Exception:
Traceback (most recent call last):
File "/app/.heroku/python/lib/python3.4/site-packages/pip-1.5.4-py3.4.egg/pip/basecommand.py", line 122, in main
status = self.run(options, args)
File "/app/.heroku/python/lib/python3.4/site-packages/pip-1.5.4-py3.4.egg/pip/commands/install.py", line 262, in run
for req in parse_requirements(filename, finder=finder, options=options, session=session):
File "/app/.heroku/python/lib/python3.4/site-packages/pip-1.5.4-py3.4.egg/pip/req.py", line 1546, in parse_requirements
session=session,
File "/app/.heroku/python/lib/python3.4/site-packages/pip-1.5.4-py3.4.egg/pip/download.py", line 275, in get_file_content
content = f.read()
File "/app/.heroku/python/lib/python3.4/codecs.py", line 313, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
Storing debug log for failure in /app/.pip/pip.log
! Push rejected, failed to compile Python app
Вот содержание моего requirements.txt
файла (созданного с pip freeze > requirements.txt
)
Django==1.6.2
dj-database-url==0.3.0
dj-static==0.0.5
django-toolbelt==0.0.1
gunicorn==18.0
psycopg2==2.5.2
pystache==0.5.3
static==1.0.2
Вот мой Procfile
(кстати: gunicorn кажется Unix «только» и не работает для Windows; read here):
web: gunicorn mytodo.wsgi
В учебнике Heroku не упоминается файл setup.py
, but it seems that one is necessary, поэтому я просто скопировал шаблон ... не мое предпочтительное решение, но я не знал, что еще делать.
setup(
name='mysite',
version='0.1.0',
install_requires=[], # Don't put anything here, just use requirements.txt
packages=['mysite'],
package_dir={'mysite': 'src/mysite'},
)
Что может быть происходит: - Сообщение об ошибке юникода может вытекать из Procfile
. Где-то в Интернете я читал, что это должен быть файл ASCII, но я не уверен, как объявить это, поскольку в Procfile нет файла, заканчивающегося. - Файл setup.py неверен.
Любая помощь приветствуется. Благодаря!
Так вам удалось это сделать в конце? – speedyGonzales
Нет ... к сожалению нет. – raummensch