如何解决如何将 env 变量动态传递给 supervisorctl?
我的意思不是在 supervisord.conf
文件中,而是 - 当您通过 supervisorctl restart procname
启动/重新启动某个进程时。我试过 ENVTEST=something supervisorctl start env-test
但没有用。
这里有一些我所拥有的:
supervisord.conf:
[program:env-test]
command=python env_test.py
stdout_logfile=logs/env_test.log
autostart=false
env_test.py:
import os
print('envtest:',os.environ.get('ENVTEST'))
我尝试过的命令:ENVTEST=something supervisorctl start env-test
我想到的解决方案是让我的程序使用一些 env 文件并在重新启动之前更改它。
非常感谢!
解决方法
到目前为止,我选择了:
pip install python-dotenv
env_test.py:
import os
from dotenv import load_dotenv
load_dotenv()
print('envtest:',os.environ.get('ENVTEST'))
.env 文件:
ENVTEST=something
并像往常一样启动它:supervisorctl start env-test
通过这种方式,python 代码可以使用该变量。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。