Как исправить ошибку приложения Heroku после развертывания - PullRequest
0 голосов
/ 09 февраля 2020

Мне нужна помощь с развертыванием этого Django приложения. Имя моего приложения fixandflex.

Это в моем Procfile:

web: gunicorn fixandflex.wsgi

LOGS:

heroku logs --tail --app desolate-woodland-37041
2020-02-09T15:18:12.160704+00:00 app[web.1]: self.load_wsgi()
2020-02-09T15:18:12.160704+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
2020-02-09T15:18:12.160705+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2020-02-09T15:18:12.160705+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
2020-02-09T15:18:12.160705+00:00 app[web.1]: self.callable = self.load()
2020-02-09T15:18:12.160705+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
2020-02-09T15:18:12.160706+00:00 app[web.1]: return self.load_wsgiapp()
2020-02-09T15:18:12.160706+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
2020-02-09T15:18:12.160706+00:00 app[web.1]: return util.import_app(self.app_uri)
2020-02-09T15:18:12.160706+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/util.py", line 358, in import_app
2020-02-09T15:18:12.160706+00:00 app[web.1]: mod = importlib.import_module(module)
2020-02-09T15:18:12.160707+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/importlib/__init__.py", line 127, in import_module
2020-02-09T15:18:12.160707+00:00 app[web.1]: return _bootstrap._gcd_import(name[level:], package, level)
2020-02-09T15:18:12.160707+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
2020-02-09T15:18:12.160707+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 983, in _find_and_load
2020-02-09T15:18:12.160708+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
2020-02-09T15:18:12.160708+00:00 app[web.1]: ModuleNotFoundError: No module named 'fixandflex.wsgi'
2020-02-09T15:18:12.160804+00:00 app[web.1]: [2020-02-09 15:18:12 +0000] [10] [INFO] Worker exiting (pid: 10)
2020-02-09T15:18:12.193506+00:00 app[web.1]: [2020-02-09 15:18:12 +0000] [4] [INFO] Shutting down: Master
2020-02-09T15:18:12.193607+00:00 app[web.1]: [2020-02-09 15:18:12 +0000] [4] [INFO] Reason: Worker failed to boot.
2020-02-09T15:18:12.262188+00:00 heroku[web.1]: Process exited with status 3
2020-02-09T15:19:06.178902+00:00 heroku[web.1]: State changed from crashed to starting
2020-02-09T15:19:05.740407+00:00 app[api]: Deploy fc360399 by user zameermuhammad92@gmail.com
2020-02-09T15:19:05.740407+00:00 app[api]: Release v7 created by user zameermuhammad92@gmail.com
2020-02-09T15:19:16.335950+00:00 heroku[web.1]: Starting process with command `gunicorn fixandflex_second.wsgi`
2020-02-09T15:19:18.670920+00:00 heroku[web.1]: State changed from starting to crashed
2020-02-09T15:19:18.551099+00:00 app[web.1]: [2020-02-09 15:19:18 +0000] [4] [INFO] Starting gunicorn 20.0.4
2020-02-09T15:19:18.551795+00:00 app[web.1]: [2020-02-09 15:19:18 +0000] [4] [INFO] Listening at: http://0.0.0.0:3789 (4)
2020-02-09T15:19:18.551986+00:00 app[web.1]: [2020-02-09 15:19:18 +0000] [4] [INFO] Using worker: sync
2020-02-09T15:19:18.556611+00:00 app[web.1]: [2020-02-09 15:19:18 +0000] [10] [INFO] Booting worker with pid: 10
2020-02-09T15:19:18.563459+00:00 app[web.1]: [2020-02-09 15:19:18 +0000] [10] [ERROR] Exception in worker process
2020-02-09T15:19:18.563472+00:00 app[web.1]: Traceback (most recent call last):
2020-02-09T15:19:18.563478+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
2020-02-09T15:19:18.563486+00:00 app[web.1]: worker.init_process()
2020-02-09T15:19:18.563487+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/workers/base.py", line 119, in init_process
2020-02-09T15:19:18.563487+00:00 app[web.1]: self.load_wsgi()
2020-02-09T15:19:18.563487+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
2020-02-09T15:19:18.563487+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2020-02-09T15:19:18.563491+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
2020-02-09T15:19:18.563491+00:00 app[web.1]: self.callable = self.load()
2020-02-09T15:19:18.563491+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
2020-02-09T15:19:18.563492+00:00 app[web.1]: return self.load_wsgiapp()
2020-02-09T15:19:18.563492+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
2020-02-09T15:19:18.563492+00:00 app[web.1]: return util.import_app(self.app_uri)
2020-02-09T15:19:18.563492+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/util.py", line 358, in import_app
2020-02-09T15:19:18.563492+00:00 app[web.1]: mod = importlib.import_module(module)
2020-02-09T15:19:18.563492+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/importlib/__init__.py", line 127, in import_module
2020-02-09T15:19:18.563493+00:00 app[web.1]: return _bootstrap._gcd_import(name[level:], package, level)
2020-02-09T15:19:18.563493+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
2020-02-09T15:19:18.563493+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 983, in _find_and_load
2020-02-09T15:19:18.563493+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
2020-02-09T15:19:18.563494+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
2020-02-09T15:19:18.563494+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
2020-02-09T15:19:18.563494+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 983, in _find_and_load
2020-02-09T15:19:18.563494+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
2020-02-09T15:19:18.563494+00:00 app[web.1]: ModuleNotFoundError: No module named 'fixandflex_second'
2020-02-09T15:19:18.563566+00:00 app[web.1]: [2020-02-09 15:19:18 +0000] [10] [INFO] Worker exiting (pid: 10)
2020-02-09T15:19:18.593216+00:00 app[web.1]: [2020-02-09 15:19:18 +0000] [4] [INFO] Shutting down: Master
2020-02-09T15:19:18.593311+00:00 app[web.1]: [2020-02-09 15:19:18 +0000] [4] [INFO] Reason: Worker failed to boot.
2020-02-09T15:19:18.656623+00:00 heroku[web.1]: Process exited with status 3
2020-02-09T15:19:19.000000+00:00 app[api]: Build succeeded
2020-02-09T15:19:31.434964+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=desolate-woodland-37041.herokuapp.com request_id=842fabd2-b89a-4fe5-86cf-d76502ca5e44 fwd="73.66.207.250" dyno= connect= service= status=503 bytes= protocol=https
2020-02-09T15:19:31.664094+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=desolate-woodland-37041.herokuapp.com request_id=b78b693c-c994-4289-8840-2e56341b6929 fwd="73.66.207.250" dyno= connect= service= status=503 bytes= protocol=https
2020-02-09T15:22:14.000000+00:00 app[api]: Build started by user zameermuhammad92@gmail.com
2020-02-09T15:23:50.083832+00:00 app[api]: Deploy 8e3c8092 by user zameermuhammad92@gmail.com
2020-02-09T15:23:50.083832+00:00 app[api]: Release v8 created by user zameermuhammad92@gmail.com
2020-02-09T15:23:50.804460+00:00 heroku[web.1]: State changed from crashed to starting
2020-02-09T15:24:03.626633+00:00 heroku[web.1]: Starting process with command `gunicorn fixandflex.wsgi`
2020-02-09T15:24:03.000000+00:00 app[api]: Build succeeded
2020-02-09T15:24:07.228419+00:00 heroku[web.1]: State changed from starting to crashed
2020-02-09T15:24:07.210651+00:00 heroku[web.1]: Process exited with status 3
2020-02-09T15:24:07.056965+00:00 app[web.1]: [2020-02-09 15:24:07 +0000] [4] [INFO] Starting gunicorn 20.0.4
2020-02-09T15:24:07.057955+00:00 app[web.1]: [2020-02-09 15:24:07 +0000] [4] [INFO] Listening at: http://0.0.0.0:33807 (4)
2020-02-09T15:24:07.058144+00:00 app[web.1]: [2020-02-09 15:24:07 +0000] [4] [INFO] Using worker: sync
2020-02-09T15:24:07.065832+00:00 app[web.1]: [2020-02-09 15:24:07 +0000] [10] [INFO] Booting worker with pid: 10
2020-02-09T15:24:07.078270+00:00 app[web.1]: [2020-02-09 15:24:07 +0000] [10] [ERROR] Exception in worker process
2020-02-09T15:24:07.078272+00:00 app[web.1]: Traceback (most recent call last):
2020-02-09T15:24:07.078273+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
2020-02-09T15:24:07.078293+00:00 app[web.1]: worker.init_process()
2020-02-09T15:24:07.078294+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/workers/base.py", line 119, in init_process
2020-02-09T15:24:07.078294+00:00 app[web.1]: self.load_wsgi()
2020-02-09T15:24:07.078295+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
2020-02-09T15:24:07.078295+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2020-02-09T15:24:07.078295+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
2020-02-09T15:24:07.078296+00:00 app[web.1]: self.callable = self.load()
2020-02-09T15:24:07.078296+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
2020-02-09T15:24:07.078296+00:00 app[web.1]: return self.load_wsgiapp()
2020-02-09T15:24:07.078297+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
2020-02-09T15:24:07.078298+00:00 app[web.1]: return util.import_app(self.app_uri)
2020-02-09T15:24:07.078298+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/site-packages/gunicorn/util.py", line 358, in import_app
2020-02-09T15:24:07.078298+00:00 app[web.1]: mod = importlib.import_module(module)
2020-02-09T15:24:07.078299+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.7/importlib/__init__.py", line 127, in import_module
2020-02-09T15:24:07.078299+00:00 app[web.1]: return _bootstrap._gcd_import(name[level:], package, level)
2020-02-09T15:24:07.078300+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
2020-02-09T15:24:07.078300+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 983, in _find_and_load
2020-02-09T15:24:07.078300+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
2020-02-09T15:24:07.078301+00:00 app[web.1]: ModuleNotFoundError: No module named 'fixandflex.wsgi'
2020-02-09T15:24:07.078444+00:00 app[web.1]: [2020-02-09 15:24:07 +0000] [10] [INFO] Worker exiting (pid: 10)
2020-02-09T15:24:07.121010+00:00 app[web.1]: [2020-02-09 15:24:07 +0000] [4] [INFO] Shutting down: Master
2020-02-09T15:24:07.121195+00:00 app[web.1]: [2020-02-09 15:24:07 +0000] [4] [INFO] Reason: Worker failed to boot.

Моя структура каталогов может быть на этом очень большом изображении: дерево каталогов

1 Ответ

0 голосов
/ 09 февраля 2020

Это немного трудно увидеть на скриншоте, но похоже, что непосредственная проблема в том, что у вас есть дополнительный уровень каталога:

  • .git/
  • fixandflex/
    • fixandflex/
      • settings.py
      • wsgi.py
      • ...
    • main/
      • ...
  • Pipfile
  • Pipfile.lock
  • ...

Обычно все в вашем каталоге верхнего уровня fixandflex/ будет находиться в root вашего хранилища, кроме ваших .git/, Pipfile и Pipfile.lock.

Вы можете сделать что-то подобное из каталога проекта верхнего уровня:

mv fixandflex fixandflex-old
cd fixandflex-old
git mv fixandflex ..
cd ..
rmdir fixandflex

, затем зафиксировать и развернуть.

Если вы не хотите этого делать, вы можете заставить его работать с существующей структурой каталогов, изменив Procfile:

web: gunicorn fixandflex.fixandflex.wsgi

Хотя, если вы сделаете это, у вас возникнут другие проблемы. Например, вам придется обновить ваш DJANGO_SETTINGS_MODULE и добавить еще один fixandflex. на передний план. И вам, вероятно, придется сделать то же самое с любым INSTALLED_APPS в вашем файле настроек. В общем, я рекомендую удалить посторонний каталог.

Помимо этой проблемы, у вас также есть файл с именем requirement.txt, который (а) условно не назван (обычно это requirements.txt с s на конец) и (b) не требуется или не используется Heroku, если у вас есть Pipfile и Pipfile.lock. Я рекомендую удалить его.

Кроме того, я вижу файл db.sqlite3. Если вы используете SQLite, вы должны знать, что на Heroku это работает не очень хорошо, поскольку его эфемерная файловая система и не следует использовать на Heroku .

I настоятельно советуем использовать один и тот же механизм базы данных для локальной разработки и производства. Все они слегка (и не очень) различаются, и вы не хотите находить ошибки только после того, как ваш код находится в разработке. PostgreSQL является распространенным выбором и хорошо поддерживается в Heroku, например, с использованием собственной службы Heroku Postgres .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...