Gunicorn不能在项目目录外工作,甚至export PWD=$DJANGODIR

2024-05-04 03:14:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我用bash脚本运行gunicorn。它的名字是“跑”_古尼康.sh在

#!/bin/bash
NAME=new_project 
DJANGODIR=/home/flame/Projects/$NAME
SOCKFILE=/home/flame/launch/web.sock
USER=flame                               
GROUP=flame                                                     
DJANGO_SETTINGS_MODULE=$NAME.settings 
DJANGO_WSGI_MODULE=$NAME.wsgi

# export PWD=$DJANGODIR   # still not work if I uncomment THIS LINE

RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR
gunicorn ${DJANGO_WSGI_MODULE}:application \
  --name $NAME \
  --workers 7 \
  --user=$USER --group=$GROUP \
  --log-level=debug \
  --bind=unix:$SOCKFILE

如果我从项目目录运行:

^{pr2}$

效果很好。但是如果

[~]$ bash Projects/new_project/run_gunicorn.sh

它会引发错误:

gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>

我想是关于当前的工作目录。所以我在gunicorn运行之前更改addexport PWD=$DJANGODIR。但错误依然存在。在

是关于一些python相关的环境变量吗?或者有什么问题?在


Tags: djangonameprojectbashhomenewshprojects
1条回答
网友
1楼 · 发布于 2024-05-04 03:14:39

使用

export PWD=$DJANGODIR

你确实改变了你当前的工作目录。在shell中,可以通过在set后面使用命令pwd来轻松地检查这一点。你必须包括

^{pr2}$

在你的剧本里。在

相关问题 更多 >