MalikDeveloper2077
@MalikDeveloper2077

Gunicorn + Django. ModuleNotFoundError: module named diasmart (my project) not found?

Вот так выглядит структура файлов
iOgSw.png

diasmart - это папка с проектом, где хранятся settings.py, wsgi.py и тд

У меня есть bash файл start_gunicorn.sh
#!/bin/bash
source /root/DiaStore/env/bin/activate  # виртуальное окружение
exec gunicorn  -c "/root/DiaStore/src/gunicorn_config.py" diasmart.wsgi


После этого у меня есть конфиг supervisor, который запускает gunicorn с помощью start_gunicorn.sh
Но я получил ошибку из start_gunicorn.py:
self.callable = self.load()
  File "/root/DiaStore/env/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
    return self.load_wsgiapp()
  File "/root/DiaStore/env/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
    return util.import_app(self.app_uri)
  File "/root/DiaStore/env/lib/python3.8/site-packages/gunicorn/util.py", line 358, in import_app
    mod = importlib.import_module(module)
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'diasmart'
[2020-07-30 16:50:09 +0000] [109587] [INFO] Worker exiting (pid: 109587)
[2020-07-30 16:50:09 +0000] [109585] [INFO] Shutting down: Master
[2020-07-30 16:50:09 +0000] [109585] [INFO] Reason: Worker failed to boot.


Все остальные вещи кроме запуска гуникорна корректные, путем экспериментов, я думаю что ошибка кроется в start_gunicorn.sh, а именно неправильно заданный путь до wsgi (diasmart.wsgi). Я перемещал этот скрипт в разные директории и запускал из них, но всегда эта же ошибка, что нет указанного модуля (в данном случае diasmart).

Как можно это исправить?
  • Вопрос задан
  • 296 просмотров
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
надо чинить

смотреть логи что у того воркера не работает,
а с файлом sh вообще что-то мутное, там через настройки конфига надо
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы