Gunicorn ModuleNotFoundError:没有名为“django”的模块

Posted

技术标签:

【中文标题】Gunicorn ModuleNotFoundError:没有名为“django”的模块【英文标题】:Gunicorn ModuleNotFoundError: No module named 'django' 【发布时间】:2019-11-28 22:30:12 【问题描述】:

我正在尝试按照this 教程部署一个 django 应用程序。 在启动 gunicorn 时,我使用此命令:gunicorn -b 127.0.0.1:8000 wsgi:application,位于我的 wsgi.py 所在的文件夹内。

wsgi.py

import os

from django.core.wsgi import get_wsgi_application

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')

application = get_wsgi_application()

我收到以下错误:

[2019-07-19 20:54:39 -0300] [7786] [INFO] Starting gunicorn 19.9.0
[2019-07-19 20:54:39 -0300] [7786] [INFO] Listening at: http://127.0.0.1:8000 (7786)
[2019-07-19 20:54:39 -0300] [7786] [INFO] Using worker: sync
[2019-07-19 20:54:39 -0300] [7789] [INFO] Booting worker with pid: 7789
[2019-07-19 20:54:39 -0300] [7789] [ERROR] Exception in worker process
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/arbiter.py", line 583, in spawn_worker
    worker.init_process()
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/workers/base.py", line 129, in init_process
    self.load_wsgi()
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/workers/base.py", line 138, in load_wsgi
    self.wsgi = self.app.wsgi()
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/app/base.py", line 67, in wsgi
    self.callable = self.load()
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/app/wsgiapp.py", line 52, in load
    return self.load_wsgiapp()
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
    return util.import_app(self.app_uri)
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/util.py", line 350, in import_app
    __import__(module)
  File "/home/ubuntu/renato-sfera/mysite/wsgi.py", line 12, in <module>
    from django.core.wsgi import get_wsgi_application
ModuleNotFoundError: No module named 'django'
[2019-07-19 20:54:39 -0300] [7789] [INFO] Worker exiting (pid: 7789)
[2019-07-19 20:54:39 -0300] [7786] [INFO] Shutting down: Master
[2019-07-19 20:54:39 -0300] [7786] [INFO] Reason: Worker failed to boot.

可能是什么?我可以发布解决问题所需的内容

【问题讨论】:

你是否使用pip install django安装了Django? 是的,django和其他依赖都安装好了 【参考方案1】:

前两天遇到同样的问题

    确保从项目目录(而不是 wsgi 文件夹)运行命令。 确保它是正确版本的 django。 尝试在虚拟环境中运行。

    安装uwsgi模块:

    pip3 安装 uwsgi

希望有帮助!

【讨论】:

【参考方案2】:

刚刚遇到这个错误。我不得不在 virtualenv 中强制安装我的要求

激活 venv:

pip install -I -r requirements.txt

最初我只是强制安装了 django,但它缺少它的依赖项。

【讨论】:

以上是关于Gunicorn ModuleNotFoundError:没有名为“django”的模块的主要内容,如果未能解决你的问题,请参考以下文章

gunicorn安装完成后无法正常调用或执行gunicorn命令

linux 优雅的退出/关闭/重启gunicorn进程

gunicorn 简介

gunicorn部署Flask服务

优雅的退出/关闭/重启gunicorn进程

ModuleNotFoundError: No module named ‘gunicorn.app‘; ‘gunicorn‘ is not a package