【问题标题】:Gunicorn Error 14: source: not found NGINX [closed]Gunicorn 错误 14:来源:未找到 NGINX [关闭]
【发布时间】:2021-12-28 16:15:11
【问题描述】:

我正在做一个电子商务项目,它运行良好,直到我删除了旧的 web-backend 文件夹并上传了一个新文件夹(我知道这不正确,我的 Github 目录有问题,该文件夹和犯了很多错误,所以我不得不清理整个东西。)对于那个项目,我使用了 Django Rest Framework 和 Vue.js。我正在使用主管来管理 gunicorn 并在后台运行它。我正在使用与另一个项目完全相同的设置,该项目构建时运行良好,但在我尝试测试 ./gunicorn_start bash 脚本时出现错误。

错误表明第 14 行源 ../venv/bin/activate 未找到。这很奇怪,因为我使用的是相同的配置、结构、nginx 设置,一切都与我的其他工作项目相同。

这与权限有关吗?如果不是,可能有什么问题?我无法理解,因为我的另一个具有相同功能的项目运行良好。希望您能提供帮助。谢谢!

这是我的 gunicorn_start 脚本:

#!/bin/sh

NAME='ecologic'
DJANGODIR=/webapps/ecologic/web-backend
SOCKFILE=/webapps/ecologic/venv/run/gunicorn.sock
USER=ecologic
GROUP=webapps
NUM_WORKERS=3
DJANGO_SETTINGS_MODULE=core.settings
DJANGO_WSGI_MODULE=core.wsgi
TIMEOUT=120

cd $DJANGODIR
source ../venv/bin/activate
export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
export PYTHONPATH=$DJANGODIR:$PYTHONPATH

RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR

exec ../venv/bin/gunicorn ${DJANGO_WSGI_MODULE}:application \
--name $NAME \
--workers $NUM_WORKERS \
--timeout $TIMEOUT \
--user=$USER --group=$GROUP \
--bind=unix:$SOCKFILE \
--log-level=debug \
--log-file=-    

./gunicorn_start
./gunicorn_start: 14: source: not found
[2021-12-28 11:10:14 -0500] [730777] [DEBUG] Current configuration:
  config: ./gunicorn.conf.py
  wsgi_app: None
  bind: ['unix:/webapps/ecologic/venv/run/gunicorn.sock']
[2021-12-28 11:10:14 -0500] [730777] [WARNING] Worker with pid 730781 was terminated due to signal 15
[2021-12-28 11:10:14 -0500] [730777] [WARNING] Worker with pid 730782 was terminated due to signal 15
[2021-12-28 11:10:14 -0500] [730777] [INFO] Shutting down: Master
[2021-12-28 11:10:14 -0500] [730777] [INFO] Reason: Worker failed to boot.

【问题讨论】:

  • source 是 bashism,但你的 shebang 是 #!/bin/sh -- 试试 #!/usr/bin/env bash 或使用更便携的 . file/to/source

标签: python vue.js nginx django-rest-framework gunicorn


【解决方案1】:

我找到了答案。问题是权限。解决了购买回到主文件夹并将所有权授予用户的问题。就我而言,它是 chown -R ecologic:webapps 。 (不要忘记最后的点,这将赋予用户对当前目录中所有文件夹的所有权)。

【讨论】:

    猜你喜欢
    • 2014-12-07
    • 2012-05-28
    • 2018-12-05
    • 2019-05-15
    • 1970-01-01
    • 2013-06-11
    • 2017-07-07
    • 2018-03-18
    • 2016-04-22
    相关资源
    最近更新 更多