环境变量使用$ BASH_ENV与supervisor,gunicorn和django

时间:2015-02-24 12:41:22

标签: bash shell environment-variables gunicorn supervisord

关于这些帖子:

Envs with supervisor, gunicorn & django

How to guarantee availability of $BASH_ENV

我想弄清楚为什么主管不会读取我的$ BASH_ENV设置。

我目前正在使用一个设置,通过管理员的配置文件加载一个gunicorn启动脚本。

我已经设置了主管的设置:

# /etc/supervisor/conf.d/test_project.conf

[program:test_project]
command=/home/konos5/gunicorn_start.sh
user=konos5
...

和gunicorn脚本是这样的:

# /home/konos5/gunicorn_start.sh

#!/bin/bash
...
echo $TEST
...

到目前为止一切顺利。 gunicorn和主管都运行良好。问题是$TEST是空的。由于supervisor从非登录的非交互式shell加载gunicorn脚本,因此它应该获取$BASH_ENV中指定的文件。

因此我这样做

$~ echo 'export TEST="HELLO WORLD"' > ~/my_custom_var
$~ export BASH_ENV=~/my_custom_var

rereadupdate主管,重新开始我的项目。但是TEST仍然是空的。这是怎么可能的,因为$ BASH_ENV应该来源?

提前谢谢。

0 个答案:

没有答案