【问题标题】:django: uwsgi not running with supervisordjango: uwsgi 没有与主管一起运行
【发布时间】:2018-04-13 07:26:46
【问题描述】:

这是我的 uwsgi ini 文件,

[uwsgi]
chdir=/root/projects/cbapis/cbapis
module=cbAPIs.wsgi:application
env = DJANGO_SETTINGS_MODULE=cbAPIs.settings.production
http=0.0.0.0:8002
workers=1
home=/root/projects/cbapis/cbapis/env

这是 django wsgi 文件,

import os

from django.core.wsgi import get_wsgi_application

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cbAPIs.settings.production")

application = get_wsgi_application()

当我使用 uwsgi 运行服务器时,它运行良好,

uwsgi --ini cbapi_uwsgi_config.ini

以下是我对这个项目的主管配置,

[program:djangocbapis]
command=uwsgi --ini /root/cbapi_uwsgi_config.ini
environment =
        DJ_DEV_SERVER_DB_NAME="****",
        DJ_DEV_SERVER_DB_USER="****",
        DJ_DEV_SERVER_DB_HOST="*****",
        DJ_DEV_SERVER_DB_PASSWORD="*****",
autostart=true
autorestart=true
user=root
priority=400
stderr_logfile=/var/app/cbapis/log/cbapis.log

当我通过主管运行这个 uwsgi 服务器时,它没有运行。我在日志文件中收到以下错误,

--- no python application found, check your startup logs for errors ---

我在同一台服务器上的其他 django 项目有类似的主管和 uwsgi 配置,这些项目在主管和 uwsgi 上运行良好。

但我不明白为什么它在使用 supervisor 运行时找不到 python 应用程序。

所以,请在这件事上帮助我。

【问题讨论】:

    标签: django uwsgi supervisord


    【解决方案1】:

    尝试提供uwsgi 的完整路径,例如/usr/bin/uwsgi/usr/local/bin/uwsgi。如果您在 ubuntu/linux 上,则键入命令 which uwsgi 以获取完整路径。它会起作用的。

    [program:djangocbapis]
    command=/usr/bin/uwsgi --ini /root/cbapi_uwsgi_config.ini
    autostart=true
    autorestart=true
    user=root
    priority=400
    stderr_logfile=/var/app/cbapis/log/cbapis.log
    

    在uwsgi .ini文件中设置环境变量。

    env = DJ_DEV_SERVER_DB_NAME="****",
    env = DJ_DEV_SERVER_DB_USER="****",
    env = DJ_DEV_SERVER_DB_HOST="*****",
    env = DJ_DEV_SERVER_DB_PASSWORD="*****",
    

    【讨论】:

    • 还是同样的错误哥们,我不认为这是阻塞问题。我认为如果路径是这样的,那么如果没有主管,它也不会运行。
    猜你喜欢
    • 2016-02-05
    • 2016-06-17
    • 2019-10-31
    • 1970-01-01
    • 1970-01-01
    • 2014-11-16
    • 2020-03-17
    • 1970-01-01
    • 2014-08-09
    相关资源
    最近更新 更多