Сложное время использования Mezzanine на Heroku - проблемы с ошибкой Procfile и словаря.

Используя следующие руководства и шаблоны github здесь, здесь и здесь , я провел большую часть вечера, борясь с django и мезонином. Прямо сейчас у меня есть mezzanine-project, называемый uccdev, который прекрасно работает, когда я запускаю python manage.py runserver.

Теперь я хочу использовать gunicorn и foreman для работы с вещами, чтобы позже я мог загружать свои проекты в героку.

Согласно Джошу Финни,

Добавление приведенного ниже Procfile запустило Mezzanine на Gunicorn и успешно заставило Heroku обслуживать мои статические файлы. Во-первых, if запускает collectstatic, чтобы убедиться, что все статические носители находятся в соответствующем месте в вашем приложении, а во-вторых, запускает сервер Gunicorn.

web: python manage.py collectstatic --noinput; python manage.py run_gunicorn -b 0.0.0.0:$PORT

Я добавил gunicorn в качестве приложения в свой settings.py, но каждый раз, когда я запускаю foreman start в терминале, оно немедленно закрывается со следующим сообщением об ошибке.

Pythoness-998:uccdev gersande$ foreman start
01:02:45 web.1  | started with pid 7592
01:02:45 web.1  | /usr/local/lib/python2.7/site-packages/mezzanine/utils/conf.py:48: UserWarning: You haven't defined the ALLOWED_HOSTS settings, which Django 1.5 requires. Will fall back to the domains configured as sites.
01:02:45 web.1  |   warn("You haven't defined the ALLOWED_HOSTS settings, which "
01:02:46 web.1  | 0 static files copied, 549 unmodified.
01:02:46 web.1  | /usr/local/lib/python2.7/site-packages/mezzanine/utils/conf.py:48: UserWarning: You haven't defined the ALLOWED_HOSTS settings, which Django 1.5 requires. Will fall back to the domains configured as sites.
01:02:46 web.1  |   warn("You haven't defined the ALLOWED_HOSTS settings, which "
01:02:46 web.1  | 2013-12-23 01:02:46 [7594] [INFO] Starting gunicorn 18.0
01:02:46 web.1  | 2013-12-23 01:02:46 [7594] [INFO] Listening at: http://0.0.0.0:5000 (7594)
01:02:46 web.1  | 2013-12-23 01:02:46 [7594] [INFO] Using worker: sync
01:02:46 web.1  | 2013-12-23 01:02:46 [7597] [INFO] Booting worker with pid: 7597
01:02:46 web.1  | 2013-12-23 01:02:46 [7597] [ERROR] Exception in worker process:
01:02:46 web.1  | Traceback (most recent call last):
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 495, in spawn_worker
01:02:46 web.1  |     worker.init_process()
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 106, in init_process
01:02:46 web.1  |     self.wsgi = self.app.wsgi()
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/app/base.py", line 114, in wsgi
01:02:46 web.1  |     self.callable = self.load()
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/app/djangoapp.py", line 142, in load
01:02:46 web.1  |     return mod.make_command_wsgi_application(self.admin_media_path)
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/app/django_wsgi.py", line 113, in make_command_wsgi_application
01:02:46 web.1  |     reload_django_settings()
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/app/django_wsgi.py", line 109, in reload_django_settings
01:02:46 web.1  |     logging_config_func(settings.LOGGING)
01:02:46 web.1  |   File "/usr/local/Cellar/python/2.7.5/Frameworks/Python.framework/Versions/2.7/lib/python2.7/logging/config.py", line 803, in dictConfig
01:02:46 web.1  |     dictConfigClass(config).configure()
01:02:46 web.1  |   File "/usr/local/Cellar/python/2.7.5/Frameworks/Python.framework/Versions/2.7/lib/python2.7/logging/config.py", line 509, in configure
01:02:46 web.1  |     raise ValueError("dictionary doesn't specify a version")
01:02:46 web.1  | ValueError: dictionary doesn't specify a version
01:02:46 web.1  | Traceback (most recent call last):
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 495, in spawn_worker
01:02:46 web.1  |     worker.init_process()
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 106, in init_process
01:02:46 web.1  |     self.wsgi = self.app.wsgi()
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/app/base.py", line 114, in wsgi
01:02:46 web.1  |     self.callable = self.load()
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/app/djangoapp.py", line 142, in load
01:02:46 web.1  |     return mod.make_command_wsgi_application(self.admin_media_path)
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/app/django_wsgi.py", line 113, in make_command_wsgi_application
01:02:46 web.1  |     reload_django_settings()
01:02:46 web.1  |   File "/usr/local/lib/python2.7/site-packages/gunicorn/app/django_wsgi.py", line 109, in reload_django_settings
01:02:46 web.1  |     logging_config_func(settings.LOGGING)
01:02:46 web.1  |   File "/usr/local/Cellar/python/2.7.5/Frameworks/Python.framework/Versions/2.7/lib/python2.7/logging/config.py", line 803, in dictConfig
01:02:46 web.1  |     dictConfigClass(config).configure()
01:02:46 web.1  |   File "/usr/local/Cellar/python/2.7.5/Frameworks/Python.framework/Versions/2.7/lib/python2.7/logging/config.py", line 509, in configure
01:02:46 web.1  |     raise ValueError("dictionary doesn't specify a version")
01:02:46 web.1  | ValueError: dictionary doesn't specify a version
01:02:46 web.1  | 2013-12-23 01:02:46 [7597] [INFO] Worker exiting (pid: 7597)
01:02:46 web.1  | 2013-12-23 01:02:46 [7594] [INFO] Shutting down: Master
01:02:46 web.1  | 2013-12-23 01:02:46 [7594] [INFO] Reason: Worker failed to boot.
01:02:46 web.1  | exited with code 3
01:02:46 system | sending SIGTERM to all processes
SIGTERM received

Любые мысли, как указать версию для словаря?


person gersande    schedule 23.12.2013    source источник


Ответы (1)


Из ответа пользователя scum - Правильный способ создания supervisord скрипт для ганикорн? Джанго 1.6

Я добавил в свой settings.py следующее:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
}
person user399829    schedule 20.01.2014