首页 > 解决方案 > 如何在 nginx 配置中获取环境变量名

问题描述

我让 nginx 服务器作为 docker 运行,基本映像为 openresty/openresty:1.15.8.3-buster。

在 docker 文件中,我有一个环境变量,如下所示 ENV UPLOAD_FOLDER /sharedvolume 如何在 nginx.config 中访问此变量?

我尝试使用 set_by_lua 如下 set_by_lua $store_path 'return os.getenv("UPLOAD_FOLDER")'; 但是 store_path 的值是 nil

标签: nginxluaopenresty

解决方案


文档中

系统环境变量支持

如果你想foo通过标准 Lua API os.getenv在 Lua 中访问系统环境变量,那么你也应该通过env 指令nginx.conf在你的文件中列出这个环境变量名。例如,


 env foo;

所以添加env UPLOAD_FOLDER;它会起作用。


推荐阅读