有没有一种方法可以在使用Ubuntu操作系统的azurevm(服务管理)上设置系统范围/全局可见的环境变量?我陷入了这样一种情况:在ubuntu的/etc/environment
/etc/profile
和{printenv
上。我的猜测是,由于我的web服务器的设置方式(Gunicorn+Nginx反向代理),它们在某种程度上被绕过了。在
但也许有一种方法可以在azurevm上设置优先于所有内容的env变量?我知道Heroku在他们的仪表板中有这个选项(我一直在使用),Azure Web应用也有这个选项(我无法使用它,因为有各种各样的兼容性问题)。在
作为参考,我在azurevm上发布了我的步骤。你可以检查一下和你的比较。在
ssh user@vm-name.cloudapp.net
安装工具
pip
和virtualenv
:准备virtualenv以安装
gunicorn
和django
创建一个django项目并使用
gunicorn
运行它并尝试访问它:安装Nginx并配置反向代理:
下面是nginx的
default
文件中配置的内容:我也尝试配置
proxy_pass http://localhost:8000;
,这也没问题。在重新启动
nginx
服务并重新启动gunicorn
:我发现应用程序启动后无法设置环境变量。所以请在启动
gunicorn
之前运行source /etc/...
命令。在有任何问题,请随时告诉我。在
相关问题 更多 >
编程相关推荐