首页 > 解决方案 > 托管在 aws ec2 上的 django Gunicorn 服务器出错

问题描述

sudo journalctl -u gunicorn命令后出错

    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]: [2019-01-03 16:22:43 +0000] [10432] [ERROR] Exception in worker process
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]: Traceback (most recent call last):
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/arbiter.py", line 583, in sp
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     worker.init_process()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/workers/base.py", line 129, 
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     self.load_wsgi()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/workers/base.py", line 138, 
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     self.wsgi = self.app.wsgi()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/app/base.py", line 67, in ws
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     self.callable = self.load()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/app/wsgiapp.py", line 52, in
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     return self.load_wsgiapp()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/app/wsgiapp.py", line 41, in
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     return util.import_app(self.app_uri)
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/util.py", line 350, in impor
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     __import__(module)
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]: ImportError: No module named 'monetimes'
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]: [2019-01-03 16:22:43 +0000] [10432] [INFO] Worker exiting (pid: 10432)
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]: [2019-01-03 16:22:43 +0000] [10433] [INFO] Booting worker with pid: 10433
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]: [2019-01-03 16:22:43 +0000] [10433] [ERROR] Exception in worker process
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]: Traceback (most recent call last):
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/arbiter.py", line 583, in sp
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     worker.init_process()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/workers/base.py", line 129, 
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     self.load_wsgi()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/workers/base.py", line 138, 
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     self.wsgi = self.app.wsgi()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/app/base.py", line 67, in ws
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     self.callable = self.load()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/app/wsgiapp.py", line 52, in
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     return self.load_wsgiapp()
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/app/wsgiapp.py", line 41, in
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     return util.import_app(self.app_uri)
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:   File "/home/ubuntu/monetimes/env/lib/python3.5/site-packages/gunicorn/util.py", line 350, in impor
    Jan 03 16:22:43 ip-172-31-27-161 gunicorn[10426]:     __import__(module)

独角兽文件

    [Unit]
    Description=gunicorn daemon
    After=network.target

    [Service]
    User=ubuntu
    Group=www-data
    WorkingDirectory=/home/ubuntu/monetimes
    ExecStart=/home/ubuntu/monetimes/env/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/ubuntu/monetimes/src/monetimes.sock monetimes.wsgi:app$

    [Install]
    WantedBy=multi-user.target

my-django 结构是:

    monetimes:
        env
        src:
            monetimes:
                __init__.py
                urls.py
                wsgi.py
            landing
            static_files
            templates
            media
            db.sqlite3
            requirements.txt
            manage.py

ec2 实例中的 django aws gunicorn 错误。我的 virtualenv 里面有 gunicorn 。

我已经共享了所有文件和代码。

当我检查状态sudo systemctl status gunicorn它正在工作但是当我添加以下命令时,我遇到了错误。

sudo journalctl -u gunicorn

请查看我的代码。

标签: djangoamazon-web-services

解决方案


尝试通过设置将monetimes/src目录添加到:PYTHONPATHEnvironment

[Service]
    User=ubuntu
    Group=www-data
    WorkingDirectory=/home/ubuntu/monetimes
    ExecStart=/home/ubuntu/monetimes/env/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/ubuntu/monetimes/monetimes.sock monetimes.wsgi:app$
    Environment="PYTHONPATH=/home/ubuntu/monetimes/src"

推荐阅读